- ©«¤l
- 2839
- ¥DÃD
- 10
- ºëµØ
- 0
- ¿n¤À
- 2895
- ÂI¦W
- 0
- §@·~¨t²Î
- ¡e²¤¡f
- ³nÅ骩¥»
- ¡e²¤¡f
- ¾\ŪÅv
- 100
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¡e²¤¡f
- µù¥U®É¶¡
- 2013-5-13
- ³Ì«áµn¿ý
- 2025-2-15
|
¦^´_ 9# Michelle-W
¡Õ«ôª÷¤kªº¦n¤Í¦W³æ¡Ö
¥H¤U¥u¸ÑÄÀÅÞ¿è¡A¤£¸ÑÄÀ»yªk¡A¬°¤F©ö©ó¤F¸Ñ¡A³¡¥÷¦³×§ï¡A
¡exDic¦r¨åÀÉ¡f¤Î¡eUnionÁp¶°Àx¦s®æ¡fªº¥Îªk¡A¦Û¦æ¥h¬d»¡©ú¡G
¡@
Sub TEST()
Dim xR As Range, xDic, xU As Range, N&, V&, XX As Range
Set xDic = CreateObject("Scripting.Dictionary")
For Each xR In Range([A2], [A65536].End(xlUp))
¡@
¡@¡@N = xDic(xR.Value)
¡@¡@If N = 0 Then xDic(xR.Value) = xR.Row: GoTo 101
¡@¡@'¡Ä²Ä¤@¦¸¹J¨£§A¡A½Ð¯d¤U±zªº¹q¸Ü¸¹½X(¦C¸¹)¡GxDic(xR.Value) = xR.Row
¡@¡@'¡ÄN = 0¡Aªí¥Ü²Ä¤@¦¸ªº¬Û¹J¡A°O¦í¦C¸¹«á¡A²¤¹L¤U¤èªº»y¥y(GoTo 101)
¡@
¡@¡@V = Application.CountA(Range(xR(1, 3), xR(1, 7)))¡@
¡@¡@'¡Ä²Ä¤G¦¸¡]¤Î¥H«á¡^¹J¨£§A¡A½Ð°Ý§A¤f³U¦³¨S¦³¿ú¡]Àˬd«DªÅ®æ¡^
¡@
¡@¡@If V = 0 Then Set XX = xR
¡@¡@'¡Ä¦pªG¨S¦³¿ú¡A§A³o¦¸ªº·s¹q¸Ü¸¹½X§Ú¤£·Q¯d¡GSet XX = xR
¡@
¡@¡@If V > 0 Then Set XX = Range("A" & N): xDic(xR.Value) = xR.Row
¡@¡@'¡Ä¦pªG¦³¿ú¡A¤W¦¸¯dªº¹q¸Ü§@¼o¡GSet XX = Range("A" & N)
¡@¡@'¡Ä´«¯d³o¦¸ªº·s¹q¸Ü¸¹½X¡GxDic(xR.Value) = xR.Row
¡@
¡@¡@If xU Is Nothing Then Set xU = XX Else Set xU = Union(xU, XX)
¡@¡@'¡Ä±Nn§@¼oªº¹q¸Ü¸¹½X¶°¤¤°_¨Ó
¡@
101: Next
¡@
If Not xU Is Nothing Then xU.EntireRow.Delete
'¡Ä¤@¦¸§R¥h§@¼o¹q¸Ü¸¹½X
End Sub |
|