Excel精英培训网

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

[已解决]怎么将相同日期对应的文本进行汇总

[复制链接]
发表于 2016-4-12 21:42 | 显示全部楼层 |阅读模式
怎么由sheet1变为sheet2,将相同日期对应的内容合并到同一单元格中?
用vba怎么实现?
能请教一下吗?
非常感谢!!!
最佳答案
2016-4-12 21:52
  1. Sub x()
  2. Dim a, x&
  3. a = Range("a1").CurrentRegion
  4. For x = 2 To UBound(a) - 1
  5.      If a(x, 1) = a(x + 1, 1) Then
  6.           a(x + 1, 2) = a(x, 2) & ";" & a(x + 1, 2)
  7.           a(x, 1) = "": a(x, 2) = ""
  8.      End If
  9. Next
  10. [h1].Resize(x, 2) = a
  11. End Sub
复制代码

Lover.rar

3.52 KB, 下载次数: 9

发表于 2016-4-12 21:52 | 显示全部楼层    本楼为最佳答案   
  1. Sub x()
  2. Dim a, x&
  3. a = Range("a1").CurrentRegion
  4. For x = 2 To UBound(a) - 1
  5.      If a(x, 1) = a(x + 1, 1) Then
  6.           a(x + 1, 2) = a(x, 2) & ";" & a(x + 1, 2)
  7.           a(x, 1) = "": a(x, 2) = ""
  8.      End If
  9. Next
  10. [h1].Resize(x, 2) = a
  11. End Sub
复制代码
回复

使用道具 举报

发表于 2016-4-12 22:17 | 显示全部楼层
附件

Lover.zip

4.46 KB, 下载次数: 6

回复

使用道具 举报

发表于 2016-4-12 23:50 | 显示全部楼层
  1. Sub Macro1()
  2. Sheet2.Activate
  3. [a2:b2000] = ""
  4. With Sheet1
  5.     p = .Cells(2, 2)
  6.     For i = 3 To 8
  7.         If .Cells(i, 1) = .Cells(i - 1, 1) Then
  8.             p = p & ";" & .Cells(i, 2)
  9.         Else
  10.             Cells(i - 1, 1) = .Cells(i - 1, 1)
  11.             Cells(i - 1, 2) = p
  12.             p = .Cells(i, 2)
  13.         End If
  14.     Next
  15. End With
  16. End Sub
复制代码

Lover.zip

9.42 KB, 下载次数: 5

回复

使用道具 举报

 楼主| 发表于 2016-4-13 22:28 | 显示全部楼层
baksy 发表于 2016-4-12 22:17
附件

非常感谢您的答案,不过我想要的是用VBA的解决方法,就把最佳给了一楼了。还是谢谢您的分享。
回复

使用道具 举报

 楼主| 发表于 2016-4-13 22:34 | 显示全部楼层
dsmch 发表于 2016-4-12 23:50

您的答案写的挺好,感觉一楼的答案更简洁一点,就把最佳给了一楼。非常感谢您的分享。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-6 04:47 , Processed in 0.263238 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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