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

¶K¤J»s³y¸¹½X«á¦Û°Ê©óG2²£¥Í¶ñº¡®ÄªG

¼Ó¥D1¼Ó
  1. Sub abc()
  2. Dim head(), body(), tail(), mycell As Range, i As Integer, j As Integer, k As Integer
  3. For Each mycell In Range([c2], [c65536].End(xlUp))
  4. ReDim Preserve head(i)
  5. ReDim Preserve body(i)
  6. ReDim Preserve tail(i)
  7. head(i) = Split(mycell, "-")(0)
  8. body(i) = Split(mycell, "-")(1)
  9. tail(i) = Split(mycell, "-")(2)
  10. i = i + 1
  11. Next

  12. Range("h2").Activate

  13. For j = 0 To UBound(head)
  14. For k = body(j) To tail(j)
  15. ActiveCell.Value = head(j) & "-" & k
  16. ActiveCell.Offset(1).Activate
  17. Next
  18. Next

  19. End Sub
½Æ»s¥N½X
¼Ó¥D5¼Ó
  1. Sub myprint()
  2. Dim mycell As Range, head(), body(), tail(), BPnumber(), i As Integer
  3. Dim j As Integer, bp As Integer, k As Integer, l As Integer

  4. For Each mycell In Range([d2], [d65536].End(xlUp))
  5. ReDim Preserve head(i)
  6. ReDim Preserve body(i)
  7. ReDim Preserve tail(i)
  8. ReDim Preserve BPnumber(i)
  9. head(i) = Split(mycell, "-")(0)
  10. body(i) = Split(mycell, "-")(1)
  11.     If UBound(Split(mycell, "-")) = 2 Then
  12.     tail(i) = Split(mycell, "-")(2)
  13.     Else
  14.     tail(i) = ""
  15.     End If
  16. BPnumber(i) = mycell.Offset(, 1).Value
  17. i = i + 1
  18. Next

  19. Range("L2").Activate

  20. For j = 0 To UBound(head)
  21.     If tail(j) = "" Then
  22.         If BPnumber(j) = 1 Then
  23.         ActiveCell = Cells(j + 2, 2).Value
  24.         ActiveCell.Offset(, 1) = Cells(j + 2, 2).Offset(, 1).Value
  25.         ActiveCell.Offset(, 2) = head(j) & "-" & body(j)
  26.         ActiveCell.Offset(1).Activate
  27.         Else
  28.             For bp = 1 To BPnumber(j)
  29.                 ActiveCell = Cells(j + 2, 2).Value
  30.                 ActiveCell.Offset(, 1) = Cells(j + 2, 2).Offset(, 1).Value
  31.                 ActiveCell.Offset(, 2) = head(j) & "-" & body(j) & Chr(64 + bp)
  32.                 ActiveCell.Offset(1).Activate
  33.             Next
  34.         End If
  35.     Else
  36.         If BPnumber(j) = 1 Then
  37.             For k = body(j) To tail(j)
  38.                 ActiveCell = Cells(j + 2, 2).Value
  39.                 ActiveCell.Offset(, 1) = Cells(j + 2, 2).Offset(, 1).Value
  40.                 ActiveCell.Offset(, 2) = head(j) & "-" & k
  41.                 ActiveCell.Offset(1).Activate
  42.             Next
  43.         Else
  44.             For k = body(j) To tail(j)
  45.                 For bp = 1 To BPnumber(j)
  46.                  ActiveCell = Cells(j + 2, 2).Value
  47.                  ActiveCell.Offset(, 1) = Cells(j + 2, 2).Offset(, 1).Value
  48.                  ActiveCell.Offset(, 2) = head(j) & "-" & k & Chr(64 + bp)
  49.                  ActiveCell.Offset(1).Activate
  50.                  Next
  51.             Next
  52.         End If
  53.     End If
  54. Next

  55. End Sub
½Æ»s¥N½X
¤gªk¤j·Ò¿û,¤ñ¸ûÁc½Æ©MºC¤@ÂI
¥t¥~5¼ÓªþÀÉD7¤@Äæ,³Ì¥k¤â­±¦³¦h¾lªÅ®æ,·|¼vÅTµ²ªG,­n¤p¤ß³B²z
80 ¦r¸`¥H¤º
¤£¤ä«ù¦Û©w¸q Discuz! ¥N½X

TOP

        ÀR«ä¦Û¦b : ¹ï¤÷¥À­nª¾®¦¡A·P®¦¡B³ø®¦¡C
ªð¦^¦Cªí ¤W¤@¥DÃD