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

[µo°Ý] ¬Y±ø¥ó¤U ¤£­«´_¥X²{¶µ¥Ø²Î­p

¤é´Á¬O¤°»ò®æ¦¡¡H
«Øij¤W¶ÇÀɮסA
¤£­nÅý·QÀ°¦£ªº¤H¦A¦hªá®É¶¡¥h«Ø¥ß´ú¸Õ¸ê®Æ¡I

TOP

¥þ³¡¡eÃþ§O¡f¦U¡e¦~¤ë¡f¤£­«ÂÐ¥þ¦C¥X¨Ó¡G
  1. Sub TEST()
  2. Dim Arr, Brr, xD(1 To 3), i&, T1, T2, T3, R&, C%
  3. [E:IV].Clear
  4. For i = 1 To 3: Set xD(i) = CreateObject("Scripting.Dictionary"): Next
  5. Arr = Range([A1], [C65536].End(xlUp))
  6. ReDim Brr(1 To UBound(Arr), 1 To 200): Brr(1, 1) = "Ãþ§O"

  7. For i = 2 To UBound(Arr)
  8.     T1 = Replace(Left(Arr(i, 1), 6), ".", "¦~"): If T1 = "" Then GoTo 101
  9.     C = xD(1)(T1)
  10.     If C = 0 Then C = xD(1).Count: xD(1)(T1) = C: Brr(1, C + 1) = T1 & "¤ë"

  11.     T2 = Arr(i, 2): If T2 = "" Then GoTo 101
  12.     R = xD(2)(T2)
  13.     If R = 0 Then R = xD(2).Count: xD(2)(T2) = R: Brr(R + 1, 1) = T2

  14.     T3 = Arr(i, 3): If T3 = "" Then GoTo 101
  15.     If xD(3)(T1 & T2 & T3) = 0 Then Brr(R + 1, C + 1) = Brr(R + 1, C + 1) + 1
  16.     xD(3)(T1 & T2 & T3) = 1
  17. 101: Next

  18. With [E4].Resize(xD(2).Count + 1, xD(1).Count + 1)
  19.      .Value = Brr
  20.      .Offset(, 1).Sort Key1:=.Item(1), Order1:=xlAscending, Header:=xlNo, Orientation:=xlLeftToRight '¾î±Æ§Ç
  21.      .Offset(1, 0).Sort Key1:=.Item(1), Order1:=xlAscending, Header:=xlNo, Orientation:=xlTopToBottom 'ª½±Æ§Ç
  22.      .Borders.LineStyle = 1
  23. End With
  24. End Sub
½Æ»s¥N½X

¡@
¡@
20160319(¤£­«´_²Î­p).rar (11.51 KB)

TOP

        ÀR«ä¦Û¦b : ¦Y­W¤F­W¡B­WºÉ¤Ü¨Ó¡A¨ÉºÖ¤FºÖ¡BºÖºÉ´d¨Ó¡C
ªð¦^¦Cªí ¤W¤@¥DÃD