Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2463|回复: 2

[习题] Excel 2015VBA初级2班第6课C组作业上交贴

[复制链接]
发表于 2015-11-15 22:23 | 显示全部楼层 |阅读模式
本帖最后由 chenzhi_juan 于 2016-8-30 12:59 编辑

作业要求:
1、提交作业请注明论坛ID及学号。如:C01-***;
2、作业请以代码方式提交,标清题号并所有题贴到一个代码标签中,无需提交附件。不会使用标签可移步帖子:http://www.excelpx.com/thread-322284-1-1.html
3、代码题要求强制声明变量,代码缩进;
4、跟帖不要重复占楼,有问题直接在原帖编辑;
5、非本组学员请勿跟帖;
6、作业截止时间:2015年11月20日18:00时
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2015-11-15 22:24 | 显示全部楼层
回复

使用道具 举报

发表于 2015-11-17 22:30 | 显示全部楼层
本帖最后由 Eternerlong 于 2015-11-17 22:35 编辑

C05 Eternerlong 交作业啦
  1. Function 对比(rng1 As Range, rng2 As Range)
  2.     Dim arr, brr, i As Integer, k As Integer

  3.     ' 前提是每个逗号必须是中文逗号
  4.     arr = Split(rng1, ",")
  5.     brr = Split(rng2, ",")
  6.     '将arr,brr 去重存入字典中,目的是对比时数据中的每个数据唯一存在
  7.     Dim d As New Dictionary, d1 As New Dictionary
  8.     For i = 0 To UBound(arr)
  9.         If d.Exists(arr(i)) Then
  10.             d(arr(i)) = arr(i) & d(arr(i))
  11.         Else
  12.             d(arr(i)) = arr(i)
  13.         End If
  14.     Next

  15.     For i = 0 To UBound(brr)
  16.         If d1.Exists(brr(i)) Then
  17.             d1(brr(i)) = brr(i) & d1(brr(i))
  18.         Else
  19.             d1(brr(i)) = brr(i)
  20.         End If
  21.     Next
  22.     '将字典中的数据放入数组中并判断arr1和brr1是否相等
  23.     Dim arr1, brr1, m As Integer
  24.     arr1 = d.Items
  25.     brr1 = d1.Items
  26.     For i = 0 To UBound(arr1)
  27.         For k = 0 To UBound(brr1)
  28.             If arr1(i) = brr1(k) Then m = m + 1
  29.         Next
  30.     Next
  31.     If m = UBound(arr1) + 1 And UBound(brr1) = UBound(arr1) Then
  32.         对比 = "相等"
  33.     Else
  34.         对比 = "不相等"
  35.     End If
  36. End Function
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-29 02:27 , Processed in 0.410989 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表