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

[µo°Ý] ¹ïÀ³Äæ¦ì°ÝÃD

¦^´_ 2# starbox520
©pªº¥\¤O¦³¼W±j¤F¡A¥[ªo¡I
¥H¤U¨â­Ó¼Ò²Õ¦b¨Ï¥Î°}¦C®É¡AÀ³¥Î¤W¦³¨Ç³\ÅܤơA
´£¨Ñ©p°Ñ¦Ò¡G
  1. Sub Ex()
  2.     Dim ln As Variant, ar As Variant
  3.     Dim cts As Integer, ct2 As Integer
  4.    
  5.     With ¤u§@ªí1
  6.         ln = .[A1].CurrentRegion.Value
  7.         ReDim ar(1 To UBound(ln, 2) - 1, 1 To 2)

  8.         For cts = 1 To UBound(ln, 2) - 1
  9.             ar(cts, 1) = ln(1, cts + 1)
  10.             ar(cts, 2) = ""
  11.             For ct2 = 3 To UBound(ln, 1)
  12.                 If ln(ct2, cts + 1) <> 0 Then
  13.                     ar(cts, 2) = IIf(ar(cts, 2) = "", ln(ct2, 1) & IIf(ln(ct2, cts + 1) > 0, "+", "") & ln(ct2, cts + 1), _
  14.                              ar(cts, 2) & "," & ln(ct2, 1) & IIf(ln(ct2, cts + 1) > 0, "+", "") & ln(ct2, cts + 1))
  15.                 End If
  16.             Next ct2
  17.         Next cts

  18.         With ¤u§@ªí2
  19.             .UsedRange.ClearContents
  20.             .[A1].Resize(UBound(ar, 1), UBound(ar, 2)) = ar
  21.         End With
  22.     End With
  23. End Sub
½Æ»s¥N½X
  1. Sub Ex1()      '  ReDim Preserve ªºÀ³¥Î¡FÅܧó³Ì«áºû«×ªº¤j¤p®É¡A¥Î¨Ó«O¯d²{¦³°}¦C¸ê®Æ¡C
  2.     Dim ln As Variant, ar As Variant
  3.     Dim cts As Integer, ct2 As Integer
  4.    
  5.     With ¤u§@ªí1
  6.         ln = .[A1].CurrentRegion.Value
  7.         '  UBound(Ln, 1) = 25 : Long   /   UBound(Ln, 2) : 8 : Long

  8.         For cts = 1 To UBound(ln, 2) - 1
  9.             If IsEmpty(ar) Then ReDim ar(1 To 2, 1 To 1) Else ReDim Preserve ar(1 To 2, 1 To UBound(ar, 2) + 1)
  10.             ar(1, cts) = ln(1, cts + 1)
  11.             ar(2, cts) = ""
  12.             For ct2 = 3 To UBound(ln, 1)
  13.                 If ln(ct2, cts + 1) <> 0 Then
  14.                     ar(2, cts) = IIf(ar(2, cts) = "", ln(ct2, 1) & IIf(ln(ct2, cts + 1) > 0, "+", "") & ln(ct2, cts + 1), _
  15.                               ar(2, cts) & "," & ln(ct2, 1) & IIf(ln(ct2, cts + 1) > 0, "+", "") & ln(ct2, cts + 1))
  16.                 End If
  17.             Next ct2
  18.         Next cts
  19.         
  20.         With ¤u§@ªí2
  21.             .UsedRange.ClearContents
  22.             .[A1].Resize(UBound(ar, 2), UBound(ar, 1)) = Application.Transpose(ar)
  23.         End With
  24.     End With
  25. End Sub
½Æ»s¥N½X

TOP

¦^´_ 6# starbox520

TOP

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-12-12 14:08 ½s¿è

¦^´_ 6# starbox520
scanttt.rar (27.91 KB)
³o¬O§Ú§â POA¡B¥H¤Î POB ªº¤º®e­È­×§ï¤F¡C

TOP

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-12-12 17:36 ½s¿è

¦^´_ 6# starbox520
¨Ì·Ó©p #6 ©Òªþ scanttt.xlsx  ­ì¥»¸ê®Æ (¥¼¥[²§°Ê)¡A
°õ¦æ¤§­×§ïª©¥»¡C
¦]¬°¨C¤@°}¦CÅܼƦ³ "³Ìªø¤£¯à¶W¹L 255" ªº­­¨î¡A
©Ò¥Hµ{¦¡¸Ì¥[¤F§PÂ_¡A¶W¥X³¡¤À¤©¥HºI±¼¤£³B¸Ì¡C
scanttt.rar (30.89 KB)

TOP

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-12-12 19:17 ½s¿è

¦^´_ 10# starbox520
¨S¿ù¡I
¨Ï¥Î²Ä¤GºØ¤èªk (ReDim Preserve)¡AÁö¨ü­­©ó Application.Transpose() 255 ªº­­¨î¡A
¦ý¥¦¯à±o¥H°ÊºAªº¼W¥[°}¦C¡A¬O¥¦ªºÀuÂI¡C¦ý¬O¥Ñ©ó©p²{¦³ªº®×¨Ò«o¤£¤Ó¾A¦X¡A¬O¬G§ï±Ä
¤@¦¸ª½±µ«Å§i°}¦C¤j¤pªº²Ä¤@ºØ¤èªk (ReDim ar())¡A¦Ó±N°}¦Cª½±µ²¾Âà (Assign) ¨ì¤u§@ªí³æ¤º¡C
¤£­P¨ü­­©ó Transpose() ªø«×ªº­­¨î¡C
  1. Sub Ex()
  2.     Dim ln As Variant, ar As Variant
  3.     Dim cts As Integer, ct2 As Integer
  4.    
  5.     With Sheets("Data")
  6.         ln = .[A1].CurrentRegion.Value      '  Ln :  : Variant/Variant(1 to 177, 1 to 35)
  7.         '  UBound(Ln, 1) = 177 : Long   /   UBound(Ln, 2) : 35 : Long
  8.         ReDim ar(1 To UBound(ln, 2) + 1, 1 To 2)

  9.         For cts = 1 To UBound(ln, 2) - 5
  10.             ar(cts, 1) = ln(1, cts + 1)  
  11.             ar(cts, 2) = ""
  12.             For ct2 = 3 To UBound(ln, 1)
  13.                  If ln(ct2, cts + 1) <> 0 Then
  14.                     ar(cts, 2) = IIf(ar(cts, 2) = "", ln(ct2, 1) & IIf(ln(ct2, cts + 1) > 0, "+", "") & ln(ct2, cts + 1), _
  15.                                         ar(cts, 2) & "," & ln(ct2, 1) & IIf(ln(ct2, cts + 1) > 0, "+", "") & ln(ct2, cts + 1))
  16.                 End If
  17.             Next ct2
  18.         Next cts
  19.     End With
  20.         
  21.     With Sheets("TEST")
  22.         .[H:I] = ""
  23.         .[H2].Resize(UBound(ar, 1), UBound(ar, 2)) = ar
  24.     End With
  25. End Sub
½Æ»s¥N½X
scanttt2.rar (31.82 KB)

TOP

P0A ªº²Õ¦X¡G

TOP

¥»©«³Ì«á¥Ñ c_c_lai ©ó 2016-12-13 09:15 ½s¿è

¦^´_ 10# starbox520
³o¬O¤§«e°õ¦æ²Ä¤GºØ¤è¦¡ (Ex1()) ©Ò²£¥Í¿ù»~¤§­ì¦]¡G

TOP

¦^´_ 15# starbox520
²Ä174.175.254.255 ¤£­nŪ¨ì³o4¦Cªº¸ê°T(¤Ï¶À³¡¤À) ?
¤£¤Ó©úÁA¡A½Ð¥Õ¸Ü¤@ÂI¡A
¬O©¿²¤¤£¥h­p¦C³B²z¡AÁÙ¬O¡H

TOP

¦^´_ 17# starbox520
¦ý¬O©pªº SQ0001 ¤Ï¶Àªº³¡¤À¬O 127¡B255¡B127¡B116¡A
¨º ¤S¬O«ç»ò¦^¨Æ¡H
116¡B127 ¤]ºâ¼Æ¶Ü¡H

TOP

¦^´_ 15# starbox520
¤£µ¥©pªº½T»{¦^´_¤F¡A
§Ú·Ç³Æ­n¥Xªù¥hªL¤fªø©°¦^¶E¤F¡C
SQ0001_xlsm.rar (35.78 KB)

TOP

        ÀR«ä¦Û¦b : ¥@¤W¦³¨â¥ó¨Æ¤£¯àµ¥¡G¤@¡B§µ¶¶ ¤G¡B¦æµ½¡C
ªð¦^¦Cªí ¤W¤@¥DÃD