- ©«¤l
- 4901
- ¥DÃD
- 44
- ºëµØ
- 24
- ¿n¤À
- 4916
- ÂI¦W
- 61
- §@·~¨t²Î
- Windows 7
- ³nÅ骩¥»
- Office 20xx
- ¾\ŪÅv
- 150
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¥x¥_
- µù¥U®É¶¡
- 2010-4-30
- ³Ì«áµn¿ý
- 2025-3-12
               
|
¦^´_ 7# freeffly - Sub ex()
- Set d = CreateObject("Scripting.Dictionary")
- For Each a In Range([A2], [A65536].End(xlUp))
- m = a & a.Offset(, 2) & Split(a.Offset(, 3), "-")(1) '¦ê±µA¡BCÄæ»PDÄ檺¤é´Á³¡¤À¦r¦ê
- If IsEmpty(d(m)) Then '·í¦r¨å¥Hm¬°¯Á¤Þªº¤º®eªì©l¤Æ®É°õ¦æ
- d(m) = Array(1, a.Offset(, 5)) '±NAÄæ»PFÄ欰°}¦C½áµ¹m¬°¯Á¤Þªº¤º®e
-
- Else '·í¥X²{²Ä¤GÓ¥H¤Wªºm
- ar = d(m) '¨ú¥X¦r¨å¤º®e
- If ar(1) <> a.Offset(, 5) Then '·í°}¦C²Ä¤GÓ¤¸¯ÀÈ»PFÄ椣¦P
- ar(0) = ar(0) + 1 '°}¦C²Ä¤@ÓÈ¥[¤@¡A·í¦¨¦P¯Á¤Þ¥B³æ»ù¤£¦Pªºp¼Æ
- d(m) = ar '±N°}¦C¦^¦s¨ì¦r¨å
- End If
- Erase ar '²M°£°}¦C
- End If
- Next
- For Each ky In d.keys
- If d(ky)(0) = 1 Then d.Remove ky '¦pªG¦r¨å¤º®e²Ä¤@Ó¶µ¥Ø¬O1¡A¤]´N¬O³æ¤@p¼Æ´N²¾°£¸Ó¯Á¤Þ¤º®e
- Next
- For Each a In Range([A2], [A65536].End(xlUp))
- m = a & a.Offset(, 2) & Split(a.Offset(, 3), "-")(1)
- i = Application.Match(m, d.keys, 0) '¨ú±o¸Ó¦r¦ê¬O¦r¨å²Ä´XÓ¶µ¥Ø
- If IsNumeric(i) Then
- a.Offset(, 6) = "A" & i '¼g¤J½s¸¹
- Else
- a.Offset(, 6) = "" '¤£¦r¨å¤º´N²MªÅGÄæ
- End If
- Next
- End Sub
½Æ»s¥N½X |
|