- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 118
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2025-5-15
               
|
6#
發表於 2011-9-6 14:27
| 只看該作者
回復 5# loyyee - Sub nn()
- Set d = CreateObject("Scripting.Dictionary")
- For Each a In Range([A1], [A1].End(xlDown))
- If IsEmpty(d(a.Value)) Then
- d(a.Value) = a.Offset(, 1)
- ElseIf IsError(Application.Match(a.Offset(, 1), Split(d(a.Value), ","), 0)) Then
- d(a.Value) = d(a.Value) & "," & a.Offset(, 1)
- End If
- Next
- For Each ky In d.keys
- d(ky) = Array(ky, UBound(Split(d(ky), ",")) + 1)
- If mystr = "" Then
- mystr = Join(d(ky), "次數=")
- Else
- mystr = mystr & Chr(10) & Join(d(ky), "次數=")
- End If
- Next
- mystr = mystr & Chr(10) & "筆數= " & d.Count & "(因出現 : " & Join(d.keys, "、") & Application.Text(d.Count, "[DBNum1]") & "筆資料)"
- [C:E] = ""
- [C1].Resize(d.Count, 2) = Application.Transpose(Application.Transpose(d.items))
- [C1].Offset(d.Count, 3) = mystr
- End Sub
複製代碼 |
|