Excel精英培训网

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

[已解决]根据表1的数据得到表2的结果

[复制链接]
发表于 2017-5-14 18:31 | 显示全部楼层 |阅读模式
123.rar (8.79 KB, 下载次数: 10)
发表于 2017-5-15 12:48 | 显示全部楼层    本楼为最佳答案   
Sub text()

Dim rng As Range, rng1 As Range, wb As String
For Each rng In Sheet1.Range("a2:a10")
If Application.CountA(Sheet1.Range(rng.Offset(0, 1), rng.Offset(0, 31))) > 0 Then
For Each rng1 In Sheet1.Range(rng.Offset(0, 1), rng.Offset(0, 31))
If rng1 <> "" Then
wb = wb & Sheet1.Cells(1, rng1.Column).Value & ","
End If
Next
Sheet2.Cells(Sheet2.Cells(Rows.Count, 1).End(3).Row + 1, 1) = rng.Value
Sheet2.Cells(Sheet2.Cells(Rows.Count, 2).End(3).Row + 1, 2) = Application.Sum(Sheet1.Range(rng.Offset(0, 1), rng.Offset(0, 31)))
wb = Left(wb, Len(wb) - 1)
Sheet2.Cells(Sheet2.Cells(Rows.Count, 3).End(3).Row + 1, 3) = wb
wb = ""
End If
Next
End Sub


回复

使用道具 举报

 楼主| 发表于 2017-5-15 15:56 | 显示全部楼层
高手,真正的高手。解决了大问题了。谢谢回答。多谢!!!!!!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 03:05 , Processed in 0.290967 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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