ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] (¤w¸Ñ¨M)±ø¥ó¤U¦Û°Ê½s¸¹

¦^´_ 1# freeffly
  1. Sub ex()
  2. Set d = CreateObject("Scripting.Dictionary")
  3. For Each a In Range([A2], [A65536].End(xlUp))
  4.    d(a & a.Offset(, 2)) = ""
  5.    a.Offset(, 6) = "A" & d.Count
  6. Next
  7. End Sub
½Æ»s¥N½X
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¦^´_ 3# freeffly
  1. Sub ex()
  2. Set d = CreateObject("Scripting.Dictionary")
  3. For Each a In Range([A2], [A65536].End(xlUp))
  4.    m = a & a.Offset(, 2) & Split(a.Offset(, 3), "-")(1)
  5.    If IsEmpty(d(m)) Then
  6.       d(m) = Array(1, a.Offset(, 5))
  7.    Else
  8.       ar = d(m)
  9.       If ar(1) <> a.Offset(, 5) Then
  10.       ar(0) = ar(0) + 1
  11.       d(m) = ar
  12.       End If
  13.       Erase ar
  14.    End If
  15. Next
  16. For Each ky In d.keys
  17.   If d(ky)(0) = 1 Then d.Remove ky
  18. Next

  19. For Each a In Range([A2], [A65536].End(xlUp))
  20.    m = a & a.Offset(, 2) & Split(a.Offset(, 3), "-")(1)
  21.    i = Application.Match(m, d.keys, 0)
  22.    If IsNumeric(i) Then
  23.    a.Offset(, 6) = "A" & i
  24.    Else
  25.    a.Offset(, 6) = ""
  26.    End If
  27. Next

  28. End Sub
½Æ»s¥N½X
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¦^´_ 5# freeffly
¦]¬°¬O¥HAÄæ§@«È¤á¸ê®Æ
©Ò¥H¥²¶·±NAÄæ«È¤á¥N¸¹¶ñº¡
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

¦^´_ 7# freeffly
  1. Sub ex()
  2. Set d = CreateObject("Scripting.Dictionary")
  3. For Each a In Range([A2], [A65536].End(xlUp))
  4.    m = a & a.Offset(, 2) & Split(a.Offset(, 3), "-")(1) '¦ê±µA¡BCÄæ»PDÄ檺¤é´Á³¡¤À¦r¦ê
  5.    If IsEmpty(d(m)) Then '·í¦r¨å¥Hm¬°¯Á¤Þªº¤º®eªì©l¤Æ®É°õ¦æ
  6.       d(m) = Array(1, a.Offset(, 5)) '±NAÄæ»PFÄ欰°}¦C½áµ¹m¬°¯Á¤Þªº¤º®e
  7.       
  8.    Else '·í¥X²{²Ä¤G­Ó¥H¤Wªºm
  9.       ar = d(m) '¨ú¥X¦r¨å¤º®e
  10.       If ar(1) <> a.Offset(, 5) Then '·í°}¦C²Ä¤G­Ó¤¸¯À­È»PFÄ椣¦P
  11.       ar(0) = ar(0) + 1 '°}¦C²Ä¤@­Ó­È¥[¤@¡A·í¦¨¦P¯Á¤Þ¥B³æ»ù¤£¦Pªº­p¼Æ
  12.       d(m) = ar '±N°}¦C¦^¦s¨ì¦r¨å
  13.       End If
  14.       Erase ar '²M°£°}¦C
  15.    End If
  16. Next
  17. For Each ky In d.keys
  18.   If d(ky)(0) = 1 Then d.Remove ky '¦pªG¦r¨å¤º®e²Ä¤@­Ó¶µ¥Ø¬O1¡A¤]´N¬O³æ¤@­p¼Æ´N²¾°£¸Ó¯Á¤Þ¤º®e
  19. Next

  20. For Each a In Range([A2], [A65536].End(xlUp))
  21.    m = a & a.Offset(, 2) & Split(a.Offset(, 3), "-")(1)
  22.    i = Application.Match(m, d.keys, 0) '¨ú±o¸Ó¦r¦ê¬O¦r¨å²Ä´X­Ó¶µ¥Ø
  23.    If IsNumeric(i) Then
  24.    a.Offset(, 6) = "A" & i '¼g¤J½s¸¹
  25.    Else
  26.    a.Offset(, 6) = "" '¤£¦r¨å¤º´N²MªÅGÄæ
  27.    End If
  28. Next

  29. End Sub
½Æ»s¥N½X
¾Ç®üµL²P_¤£®¢¤U°Ý

TOP

        ÀR«ä¦Û¦b : ºw¤ô¦¨ªe¡C²É¦Ì¦¨ÅÚ¡A¤Å»´¤vÆF¡A¤Å¥Hµ½¤p¦Ó¤£¬°¡C
ªð¦^¦Cªí ¤W¤@¥DÃD