首先我的原始数据是
要把它变成如下的样子。txt格式
Sub ds()
Dim i As Integer
Dim j As Integer
Dim m As Integer
j = 2
m = 2
For i = 2 To 3402
If Sheets("Sheet").Cells(i, 1).Value = Sheets("Sheet").Cells(j, 5).Value Then
Sheets("Sheet").Cells(j, 6 + m - 2).Value = Sheets("Sheet").Cells(i, 2).Value
m = m + 1
Else: Sheets("Sheet").Cells(j + 1, 6).Value = Sheets("Sheet").Cells(i, 2).Value
j = j + 1
m = 3
End If
Next i
End Sub
以上用于把相同的id 的 A 放在同一行
第二个是加入逗号的vba,最后结果复制到txt上就可以了
Sub ds1()
Dim i As Integer
Dim j As Integer
j = 2
i = 6
With Sheets("Sheet")
Do While j <= 641
If .Cells(j, i + 1).Value > 0 Then
.Cells(j, 6) = .Cells(j, 6) & "," & .Cells(j, i + 1)
i = i + 1
Else: j = j + 1
i = 6
End If
Loop
End With
End Sub