Excel精英培训网

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

[已解决]相同加1请高手给个VBA解法

[复制链接]
发表于 2012-1-20 15:47 | 显示全部楼层 |阅读模式
看附件,请高手给个VBA解法,谢谢
Book1.rar (1.94 KB, 下载次数: 22)
发表于 2012-1-20 16:17 | 显示全部楼层
回复

使用道具 举报

发表于 2012-1-20 16:56 | 显示全部楼层    本楼为最佳答案   
本帖最后由 liuts 于 2012-1-20 20:35 编辑
  1. Option Explicit
  2. Sub liuts()
  3.     Dim arr, sr$, s$, i%, x As Byte, dic As Object, srg$, Ar, j%, brr()
  4.     Set dic = CreateObject("scripting.dictionary")
  5.     arr = Range("b4:b7")
  6.     ReDim brr(1 To UBound(arr))
  7.     For j = 1 To UBound(arr)
  8.         sr = arr(j, 1)
  9.         x = Len(sr): srg = "": dic.RemoveAll
  10.         For i = 1 To x
  11.             s = Mid(sr, i, 1)
  12.             If Not dic.Exists(s) Then
  13.                 dic.Add s, Array(s, 0)
  14.             Else
  15.                 Ar = dic(s)
  16.                 Ar(1) = Ar(1) + 1
  17.                 Ar(0) = Right(s + Ar(1), 1)
  18.                 dic(s) = Ar
  19.             End If
  20.             srg = srg & dic(s)(0)
  21.         Next
  22.         brr(j) = srg
  23.     Next
  24.     Range("c4").Resize(UBound(brr)) = Application.Transpose(brr)
  25. End Sub
复制代码
前期绑定换成后期绑定就可以了
回复

使用道具 举报

 楼主| 发表于 2012-1-20 19:14 | 显示全部楼层
本帖最后由 东方智彩 于 2012-1-20 19:15 编辑

QQ截图未命名.png

dic As New Dictionary
代码测试出现这个情况,请版主修改,谢谢!

回复

使用道具 举报

发表于 2012-1-20 20:55 | 显示全部楼层
上面版主的代码真的看不懂啊,得好好学习
回复

使用道具 举报

 楼主| 发表于 2012-1-20 21:10 | 显示全部楼层
谢谢版主代码测试正解,学习了
回复

使用道具 举报

发表于 2012-1-20 21:24 | 显示全部楼层
学习了                 
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-3 20:02 , Processed in 0.284359 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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