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

·j´M °t¹ï ¿é¥X­È

¥»©«³Ì«á¥Ñ ­ã´£³¡ªL ©ó 2015-10-20 17:06 ½s¿è
  1. Sub Macro3()
  2. Dim j&, C&, Arr, Brr, X&, Y&, T$, xD
  3. With Range([A1], [A65536].End(xlUp)(1, 2))
  4. ¡@¡@¡@Arr = .Value
  5. ¡@¡@¡@'¡Ä½d³ò¯Ç¤J°}¦C
  6. ¡@¡@¡@C = Application.CountIf(.Columns(1), "[*]") + 1
  7. ¡@¡@¡@'¡Ä­pºâ¡e¶µ¥Ø¡f­Ó¼Æ
  8. End With
  9. ¡@
  10. ReDim Brr(UBound(Arr), C)
  11. Set xD = CreateObject("Scripting.Dictionary")
  12. ¡@
  13. For j = 1 To UBound(Arr)
  14. ¡@¡@¡@T = Arr(j, 1): If T = "" Then GoTo 101
  15. ¡@¡@¡@'Àx¦s®æ­È¥H T ÅܼƥN¤§
  16. ¡@¡@¡@If Left(T, 1) = "[" Then X = X + 1: Brr(0, X) = T: GoTo 101
  17. ¡@¡@¡@'¡ÄÀx¦s®æ­Y¬°¡e¶µ¥Ø¡f¡A¦V¥k²Ö­pÄæ¦ì¡A¨Ã¥[¤J¶µ¥Ø
  18. ¡@¡@¡@If xD(T) = 0 Then Y = Y + 1: xD(T) = Y: Brr(Y, 0) = T
  19. ¡@¡@¡@'¡Ä­Y¬°¡e©ú²Ó¡f¡A¦V¤U²Ö­p¦C¦ì¡A¨Ã¥[¤J©ú²Ó
  20. ¡@¡@¡@Brr(xD(T), X) = Val(Arr(j, 2))
  21. ¡@¡@¡@'¡Ä±a¤J°t¹ï­È
  22. 101: Next j
  23. ¡@
  24. [F7].Resize(Y + 1, X + 1) = Brr
  25. '¡Ä¶ñ¤J°}¦C¤º®e
  26. [G8].Resize(Y, X).Replace "", "n/a"
  27. '¡Ä±N¡eªÅ®æ¡f¨ú¥N¬°¡en/a¡f
  28. End Sub
½Æ»s¥N½X

¡@
¡@
¥u¯à¤j¬ùµù¸Ñ¡A½Ð¦Û¦æ¬ã¨s¡A®¤¤£¦A»¡©ú¡ã¡ã¡@

TOP

        ÀR«ä¦Û¦b : ¤f»¡¤@¥y¦n¸Ü¡A¦p¤f¥X½¬ªá¡F¤f»¡¤@¥yÃa¸Ü¦p¤f¦R¬r³D¡C
ªð¦^¦Cªí ¤W¤@¥DÃD