Excel精英培训网

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

[已解决]集合并问题

[复制链接]
发表于 2014-4-13 07:45 | 显示全部楼层 |阅读模式
本帖最后由 left369 于 2014-4-13 10:52 编辑

把U列数据合并到第一行。
最佳答案
2014-4-13 09:25
  1. Sub Macro1()
  2. Dim arr, brr, i&, s&
  3. arr = Range("u4:u" & Range("u65536").End(xlUp).Row)
  4. ReDim brr(1 To 3, 1 To Columns.Count)
  5. For i = 1 To UBound(arr)
  6.     If arr(i, 1) <> "" Then
  7.         s = s + 1
  8.         brr(1, s) = arr(i, 1)
  9.         brr(2, s) = Left$(arr(i, 1), 1)
  10.         brr(3, s) = Mid$(arr(i, 1), 2)
  11.     End If
  12. Next
  13. [1:3].NumberFormatLocal = "@"
  14. Range("a1").Resize(3, s) = brr
  15. Range("a1").Resize(3, s).Sort Key1:=[a2], Key2:=[a3], Header:=xlGuess, Orientation:=xlLeftToRight
  16. Range("a2").Resize(2, s).ClearContents
  17. End Sub
复制代码

合并SSSSSSS.zip

8.54 KB, 下载次数: 16

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-4-13 08:56 | 显示全部楼层
=INDEX(Sheet1!$A$1:$AD$1,1,ROW())
是不是描述的有问题,用这个函数试一下。
回复

使用道具 举报

 楼主| 发表于 2014-4-13 09:04 | 显示全部楼层
yuan1987 发表于 2014-4-13 08:56
=INDEX(Sheet1!$A$1:$AD$1,1,ROW())
是不是描述的有问题,用这个函数试一下。

你好,有VBA的方式么?
就是把U列的数据转置到第一行的意思。去掉空格及按第1位数从小到大排序。
回复

使用道具 举报

发表于 2014-4-13 09:25 | 显示全部楼层    本楼为最佳答案   
  1. Sub Macro1()
  2. Dim arr, brr, i&, s&
  3. arr = Range("u4:u" & Range("u65536").End(xlUp).Row)
  4. ReDim brr(1 To 3, 1 To Columns.Count)
  5. For i = 1 To UBound(arr)
  6.     If arr(i, 1) <> "" Then
  7.         s = s + 1
  8.         brr(1, s) = arr(i, 1)
  9.         brr(2, s) = Left$(arr(i, 1), 1)
  10.         brr(3, s) = Mid$(arr(i, 1), 2)
  11.     End If
  12. Next
  13. [1:3].NumberFormatLocal = "@"
  14. Range("a1").Resize(3, s) = brr
  15. Range("a1").Resize(3, s).Sort Key1:=[a2], Key2:=[a3], Header:=xlGuess, Orientation:=xlLeftToRight
  16. Range("a2").Resize(2, s).ClearContents
  17. End Sub
复制代码
回复

使用道具 举报

发表于 2014-4-13 09:27 | 显示全部楼层
2-3行为辅助列,建议数据从u4开始

集合并.zip

12.62 KB, 下载次数: 8

回复

使用道具 举报

 楼主| 发表于 2014-4-13 09:33 | 显示全部楼层
dsmch 发表于 2014-4-13 09:27
2-3行为辅助列,建议数据从u4开始

好强大呀。
回复

使用道具 举报

 楼主| 发表于 2014-4-13 09:53 | 显示全部楼层
dsmch 发表于 2014-4-13 09:27
2-3行为辅助列,建议数据从u4开始

再问下老师,如果第一行不是从第一个单元格填入结果。而是从比如第7列开始填入。代码修改哪里呢?
回复

使用道具 举报

发表于 2014-4-13 10:04 | 显示全部楼层
left369 发表于 2014-4-13 09:53
再问下老师,如果第一行不是从第一个单元格填入结果。而是从比如第7列开始填入。代码修改哪里呢?

用附件说明问题并模拟结果,建议把结果放在一列,这样可以最大程度的利用工作表
回复

使用道具 举报

 楼主| 发表于 2014-4-13 10:26 | 显示全部楼层
dsmch 发表于 2014-4-13 10:04
用附件说明问题并模拟结果,建议把结果放在一列,这样可以最大程度的利用工作表

哦哦,谢谢老师的安排,只是我不会修改代码放在一列呢。
回复

使用道具 举报

发表于 2014-4-13 10:36 | 显示全部楼层
………………

集合并.zip

12.63 KB, 下载次数: 8

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 06:41 , Processed in 0.363465 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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