Excel精英培训网

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

[已解决]特殊排序

[复制链接]
发表于 2011-4-9 22:18 | 显示全部楼层 |阅读模式
如何修改下代码 ,实现B列到最后一列的数据 和A列对齐

下面附件已实现BC列数据与A列对齐
最佳答案
2011-4-9 23:00
  1. Sub Macro1() 'ZHANGGANG1960
  2.     Dim arr, brr(), d As Object, i&, j&
  3.     Set d = CreateObject("scripting.dictionary") '定义字典对象
  4.     arr = [a1].CurrentRegion '数据区域写入数组
  5.     ReDim brr(1 To UBound(arr), 1 To 256) '重新定义数组brr,使它行数同arr,256列
  6.     For i = 1 To UBound(arr) '逐行
  7.         d(arr(i, 1)) = i 'A列单元格添加到字典键值,行号添加到字典条目,即不重复的A列单元格和其行号关联
  8.     Next
  9.     For i = 1 To UBound(arr) '逐行
  10.         If d.Exists(arr(i, 2)) Then '如果B列单元格字典存在
  11.             For j = 2 To 256
  12.             brr(d(arr(i, 2)), j - 1) = arr(i, j)
  13.             Next
  14.         End If
  15.     Next
  16.     [b1].Resize(UBound(arr), 255) = brr '数组brr覆盖原需要排序区域
  17. End Sub
复制代码
修改出来的代码是可以用的
不过我自己要再理解理解看。
PS:先睡觉去了。

特殊排序.rar

7.51 KB, 下载次数: 36

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2011-4-9 22:30 | 显示全部楼层
回复

使用道具 举报

发表于 2011-4-9 23:00 | 显示全部楼层    本楼为最佳答案   
  1. Sub Macro1() 'ZHANGGANG1960
  2.     Dim arr, brr(), d As Object, i&, j&
  3.     Set d = CreateObject("scripting.dictionary") '定义字典对象
  4.     arr = [a1].CurrentRegion '数据区域写入数组
  5.     ReDim brr(1 To UBound(arr), 1 To 256) '重新定义数组brr,使它行数同arr,256列
  6.     For i = 1 To UBound(arr) '逐行
  7.         d(arr(i, 1)) = i 'A列单元格添加到字典键值,行号添加到字典条目,即不重复的A列单元格和其行号关联
  8.     Next
  9.     For i = 1 To UBound(arr) '逐行
  10.         If d.Exists(arr(i, 2)) Then '如果B列单元格字典存在
  11.             For j = 2 To 256
  12.             brr(d(arr(i, 2)), j - 1) = arr(i, j)
  13.             Next
  14.         End If
  15.     Next
  16.     [b1].Resize(UBound(arr), 255) = brr '数组brr覆盖原需要排序区域
  17. End Sub
复制代码
修改出来的代码是可以用的
不过我自己要再理解理解看。
PS:先睡觉去了。
回复

使用道具 举报

 楼主| 发表于 2011-4-10 00:06 | 显示全部楼层
放浪形骸 发表于 2011-4-9 23:00
修改出来的代码是可以用的
不过我自己要再理解理解看。
PS:先睡觉去了。

十分感谢。。。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-23 11:37 , Processed in 0.215614 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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