Q
唯一值和CSV列
-1
A
回答
1
随着Sheet1中这样的数据:
运行此宏:
Sub dural()
Dim s1 As Worksheet, s2 As Worksheet
Dim i As Long, j As Long, st As String
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
s1.Range("A:A").Copy s2.Range("A1")
s2.Range("A:A").RemoveDuplicates Columns:=1, Header:=xlNo
For Each r In s2.Range("A:A")
v = r.Value
If v = "" Then Exit Sub
For Each rr In s1.Range("A:A")
vv = rr.Value
If vv = "" Then Exit For
If v = vv Then
If r.Offset(0, 1).Value = "" Then
r.Offset(0, 1).Value = rr.Offset(0, 1).Value
Else
r.Offset(0, 1).Value = r.Offset(0, 1).Value & " ," & rr.Offset(0, 1).Value
End If
End If
Next rr
Next r
End Sub
会产生这Sheet2中:
注:
在工作表Sheet1 不需要进行排序的数据。
+0
完美地工作,谢谢! – Sam
+0
@Sam谢谢您的反馈! –
1
试试这个:
Sub Test()
Dim objIds, arrData, i, strId
Set objIds = CreateObject("Scripting.Dictionary")
arrData = Range("A1:B8").Value ' put here your source range
For i = LBound(arrData, 1) To UBound(arrData, 1)
If IsEmpty(objIds(arrData(i, 1))) Then
objIds(arrData(i, 1)) = arrData(i, 2)
Else
objIds(arrData(i, 1)) = objIds(arrData(i, 1)) & ", " & arrData(i, 2)
End If
Next
i = 1 ' first row for output
For Each strId In objIds
Cells(i, 3) = strId ' first column for output
Cells(i, 4) = objIds(strId) ' second column for output
i = i + 1
Next
End Sub
1
这是你所需要的,没有什么必须进行排序:
Sub Sam()
Dim c&, i&, d$, s$, v, w
v = [a1].CurrentRegion.Resize(, 2)
ReDim w(1 To UBound(v), 1 To 2)
For i = 1 To UBound(v)
d = ", "
If s <> v(i, 1) Then d = "": c = c + 1: s = v(i, 1): w(c, 1) = s
w(c, 2) = w(c, 2) & d & v(i, 2)
Next
[d1:e1].Resize(UBound(w)) = w
End Sub
此代码是非常快的。如果你要处理一个大的列表,效率在这里将不胜感激。
通过调整过程顶部和底部的方括号中的地址,您可以管理源数据的位置和输出的写入位置。
0
相关问题
- 1. CSV - 列值的唯一组合
- 2. 熊猫:和值从列唯一值
- 3. 另一列的唯一值的一列的唯一值
- 4. 跨列唯一值
- 5. SharePoint:唯一列值
- 6. 管理唯一值的csv字符串
- 7. 唯一的多列和NULL值
- 8. csv文件行中每列的Python唯一值
- 9. 合并列表concating唯一值的逗号分隔通过CSV
- 10. 基于另一列值的唯一值?
- 11. 和值B列只有在列中的值是唯一
- 12. django中的唯一列值
- 13. 从列获取唯一值
- 14. 只列出唯一值
- 15. 具有唯一值的列
- 16. 获取一列逗号分隔值的计数和唯一值?
- 17. PostgreSQL - 在一列和两列中选择唯一值的计数
- 18. 根据另一列的唯一值求和列
- 19. 将1列非唯一值与另一列非唯一值进行比较
- 20. 总和唯一值,条件
- 21. 检查数组中的唯一值和非唯一值
- 22. 另一列中唯一值的列中值的均值
- 23. factory_girls序列和唯一性
- 24. 的Python:聚集不是唯一值列表成为一个字典CSV输出
- 25. 来自两列的唯一值列表
- 26. Python的CSV到JSON阵列与来自CSV唯一值的对象作为一个JSON对象多于一个
- 27. 如何在python字典中获取唯一键和唯一值列表?
- 28. 选择一列的每个唯一值
- 29. 获得一个SQL列的唯一值
- 30. 检查数组的唯一值和输出csv(循环和访问vba)
[python] or [excel]?可能的重复[集合,整理和转置行到列](http://stackoverflow.com/questions/29440349/aggregate-collate-and-transpose-rows-into-columns) – Jeeped
在Excel中抱歉。我已经尝试过您建议的脚本,但不幸的是我无法为我的需求工作。 – Sam