| ©«¤l1517 ¥DÃD40 ºëµØ0 ¿n¤À1541 ÂI¦W0  §@·~¨t²ÎWindows  7 ³nÅ骩¥»Excel 2010 & 2016 ¾\ŪÅv100 ©Ê§O¨k ¨Ó¦Û¥xÆW µù¥U®É¶¡2020-7-15 ³Ì«áµn¿ý2025-10-31 
 | 
                
| ÁÂÁ½׾Â,ÁÂÁ¦U¦ì«e½ú ¥H¤U¬O½m²ß±q¦r¨å¤¤´£¨ú¸ê®Æ¨ì·s¼Wµù¸Ñªº¤è®×,½Ð¦U¦ì«e½ú«ü±Ð
 
 °õ¦æµ²ªG:
 
     
 Option Explicit
 Sub TEST1()
 Dim Brr, Crr(1 To 1000, 1 To 5), A, V, Z, K, i&, N&, R&, X&, T$, T1$, T2$, T3$, T4$, xR As Range
 Set Z = CreateObject("Scripting.Dictionary")
 Application.Goto [©³½Z!H1:O1]
 [I:O].Delete
 Brr = Range([E1], [B65536].End(3)(1, 0))
 For i = 2 To UBound(Brr)
 T1 = Format(Brr(i, 1), "YYYY/MM/DD"): T2 = Brr(i, 2): T3 = Brr(i, 3)
 V = Val(Brr(i, 5))
 T4 = Brr(i, 4)
 If T3 = "®M¥ó¤÷¶µ" Then
 T = T4
 If Not Z.Exists(T) Then
 Z(T) = Crr: A = Crr
 N = N + 1: Z(T & "/") = N
 Brr(N, 1) = T: Brr(N, 2) = V
 Else
 A = Z(T)
 Brr(Z(T & "/"), 2) = Brr(Z(T & "/"), 2) + V
 End If
 GoTo i01
 End If
 R = Z(T & "/" & T4)
 If R = 0 Then
 Z(T & "|") = Z(T & "|") + 1
 A(Z(T & "|"), 1) = T4
 A(Z(T & "|"), 2) = T
 Z(T & "/" & T4) = Z(T & "|")
 Z(T & "/" & T4 & "//") = "¤é´Á              ³æ¾Ú½s¸¹                  ²£«~Ãþ«¬   ª«®Æ½s½X          ¹êµo¼Æ¶q"
 R = Z(T & "|")
 End If
 A(R, 3) = A(R, 3) + V
 Z(T) = A
 Z(T & "/" & T4 & "//") = Z(T & "/" & T4 & "//") & vbLf & Join(Array(T1, T2, T3, T4, V), "__")
 i01: Next
 Set xR = [I2]
 For Each K In Z.Keys
 If IsArray(Z(K)) Then
 xR.Resize(Z(K & "|"), 3) = Z(K)
 Set xR = xR(Z(K & "|") + 1)
 X = X + Z(K & "|")
 End If
 Next
 With [H2].Resize(X, 4)
 .Sort KEY1:=.Item(2), Order1:=1, Key2:=.Item(3), Order2:=1, Header:=2
 .Columns(1) = "=""®M®Æ"" &COUNTIF($I$2:I2,I2)"
 For i = 1 To X
 T = Z(.Cells(i, 3) & "/" & .Cells(i, 2) & "//")
 With .Cells(i, 2).AddComment
 .Text Text:=T
 .Shape.TextFrame.Characters.Font.Size = 12
 .Shape.DrawingObject.AutoSize = True
 End With
 Next
 End With
 [H1:O1] = Array("®M®Æ", "®M¥ó¤l¶µ", "®M¥ó¤÷¶µ", "¹êµo¼Æ¶q", , , "®M¥ó¤÷¶µ", "¹êµo¼Æ¶q")
 With [N2].Resize(N, 2)
 .Value = Brr
 .Sort KEY1:=.Item(1), Order1:=1, Header:=2
 End With
 [H:O].Columns.AutoFit
 End Sub
 | 
 |