怎么让一列或多列数据转换为一行或者多行数据?(已解决) ...
想要图片上的效果,因为数据很多,有3000多行数据,需要图片这样的转换,想看看有啥好的办法。就本附件数据:建议增加字段名+数据透视表,如果b列是随机值,再增加辅助列进行数据透视
Private Sub CommandButton1_Click()
Dim dr As New Dictionary
Dim dc As New Dictionary
Dim arr, brr(), I&, N&
arr = Range(Range("A60000").End(xlUp), "B1")
N = UBound(arr)
ReDim brr(1 To N, 1 To 100)
For I = 1 To N
If Not dr.Exists(arr(I, 1)) Then
dr(arr(I, 1)) = dr.Count + 1
End If
dc(arr(I, 1)) = dc(arr(I, 1)) + 1
brr(dr(arr(I, 1)), dc(arr(I, 1))) = arr(I, 2)
Next
Range("D1").EntireColumn.Resize(, 100 + 1).ClearContents
Range("E1").Resize(dr.Count, 100) = brr
Range("D1").Resize(dr.Count) = WorksheetFunction.Transpose(dr.Keys())
End Sub 。。。。。。。用字典。
=IFERROR(INDEX($B$1:$B$38,SMALL(IF($A$1:$A$38=$D1,ROW($A$1:$A$38),4^8),COLUMN(A1))),"") 谢谢。紫薯布丁 非常好用,谢谢版主大人 5楼的数组也能达到效果 论坛的大咖们,谢谢你们的支持!
页:
[1]