Excel精英培训网

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

[已解决]求改个vba

[复制链接]
发表于 2013-7-23 09:36 | 显示全部楼层 |阅读模式
Book20.xls.rar (497.74 KB, 下载次数: 6)
发表于 2013-7-25 18:52 | 显示全部楼层    本楼为最佳答案   
  1. Private Sub CommandButton1_Click()
  2. Dim arr, arr1, arr2(1 To 100), i&, j%, k As Byte, l As Byte, m As Byte, d As Object, c
  3. Set d = CreateObject("scripting.dictionary")
  4. m = 1
  5. For k = 6 To [iv10].End(1).Column Step 4
  6.   arr = Range(Cells(10, k), Cells(UsedRange.Rows.Count, k + 3))
  7.   ReDim arr1(1 To 100)
  8.   l = 1
  9.   For j = 1 To 4
  10.     For i = 1 To UBound(arr)
  11.      If arr(i, j) <> "" Then d(arr(i, j)) = d(arr(i, j)) + 1
  12.     Next i
  13.     For Each c In d.keys
  14.       If d(c) > 1 Then arr1(l) = c: l = l + 1
  15.     Next c
  16.     d.RemoveAll
  17.   Next j
  18.   For l = 1 To UBound(arr1)
  19.     If arr1(l) <> "" Then d(arr1(l)) = d(arr1(l)) + 1
  20.   Next l
  21.   For Each c In d.keys
  22.     If d(c) > 1 Then arr2(m) = c: m = m + 1
  23.   Next c
  24.   d.RemoveAll
  25. Next k
  26. [a1].Resize(UBound(arr2)) = Application.Transpose(arr2)
  27. End Sub
复制代码

Book2.zip

17.57 KB, 下载次数: 4

回复

使用道具 举报

 楼主| 发表于 2013-7-26 21:49 | 显示全部楼层
大灰狼1976 发表于 2013-7-25 18:52

在我那个附件上会提示错误424,是什么原因?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 08:13 , Processed in 0.662845 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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