Excel精英培训网

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

求高手帮忙做个VBA,谢谢

[复制链接]
发表于 2017-3-14 13:06 | 显示全部楼层 |阅读模式
求高手帮忙做个VBA,谢谢。详情请见附件

新建 Microsoft Excel 工作表 (2).rar

6.92 KB, 下载次数: 21

附件

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2017-3-25 21:51 | 显示全部楼层
做了个示例,最前面插入了一列,便于标识对应关系,最后的标色不难实现,但是标在哪里并不明确,所以没做。附件请参考。
  1. Private Sub CommandButton1_Click()
  2. Dim arr, brr, i&, j&, k&
  3. arr = [b1].CurrentRegion
  4. ReDim brr(1 To 8, 1 To UBound(arr, 2))
  5. For j = 1 To UBound(arr, 2)
  6.   For i = UBound(arr) To 2 Step -1
  7.     For k = i - 1 To 1 Step -1
  8.       If arr(k, j) <> arr(i, j) Then Exit For
  9.     Next k
  10.     If i = UBound(arr) Then brr(8, j) = i - k
  11.     If brr(arr(i, j) + 1, j) < i - k Then brr(arr(i, j) + 1, j) = i - k
  12.     i = k + 1
  13.   Next i
  14. Next j
  15. [b16].Resize(8, UBound(brr, 2)) = brr
  16. End Sub
复制代码

test.zip

11.22 KB, 下载次数: 1

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 13:34 , Processed in 0.246661 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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