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

¤ñ¹ï¨âª½Ä檺¼Æ­È§R°£­«½Æ¾î¦C°ÝÃD

¥»©«³Ì«á¥Ñ ­ã´£³¡ªL ©ó 2016-10-18 10:32 ½s¿è

2000µLªk¥¿±`¶}±ÒªþÀÉ¡]®æ¦¡¤Ó¦h¡^¡A
¥u¯à²q¡AµLªk¸Õ¸Ñ¡I

TOP

¦^´_ 8# greetingsfromtw

ÁÙ¬OµLªk¥¿±`¶}±ÒÀÉ®×(®æ¦¡¤Ó¦h), ¤j·§²qµÛ¼g, ¯à¦Û¦æ§ó§ï³Ì¦n:
  1. Sub T_TEST()
  2. Dim Arr, i&, j%, xD, TK&, TM&, N&
  3. Arr = Range("A2:AD" & Cells(Rows.Count, 1).End(xlUp).Row)
  4. Set xD = CreateObject("Scripting.Dictionary")
  5. For i = 1 To UBound(Arr)
  6.     If Arr(i, 3) = "" Then GoTo 101 'CÄ椣¬°ªÅ
  7.     TK = "k" & Arr(i, 11):  TM = "m" & Arr(i, 13) '¼Æ¦r¦U¦Û«a¤W¤£¦P¤å¦r°Ï§O
  8.     If xD(TK & TM) = 1 Then GoTo 101 '¨âÄ槹¥þ¬Û¦P¥B¤w¯Ç¤J¦r¨å, ¤£³B²z
  9.     If xD(TK) = 1 Then Arr(i, 11) = "": GoTo 999 'K­È¬Û¦P¥B«D²Ä¤@µ§, ²MªÅK­È
  10.     If xD(TM) = 1 Then Arr(i, 13) = "": GoTo 999 'M­È¬Û¦P¥B«D²Ä¤@µ§, ²MªÅM­È
  11. 999: N = N + 1
  12.     For j = 1 To UBound(Arr, 2): Arr(N, j) = Arr(i, j): Next '¨ú±o§ó·s«áªº¸ê®Æ©ñ¦b­ì°}¦C
  13.     xD(TK & TM) = 1: xD(TK) = 1: xD(TM) = 1 '¯Ç¤J¦r¨åÀɨëa¤W1¬°ÃѧO½X
  14. 101: Next i
  15. If N = 0 Then Exit Sub
  16. [A2:AD2].Resize(UBound(Arr)).Clear '²MªÅ­ì¸ê®Æ
  17. [A2:AD2].Resize(N) = Arr '¶ñ¤J§ó·s¸ê®Æ
  18. End Sub
½Æ»s¥N½X

TOP

        ÀR«ä¦Û¦b : ¦³¤ß´N¦³ºÖ¡A¦³Ä@´N¦³¤O¡A¦Û³yºÖ¥Ð¡A¦Û±oºÖ½t¡C
ªð¦^¦Cªí ¤W¤@¥DÃD