- ©«¤l
- 4901
- ¥DÃD
- 44
- ºëµØ
- 24
- ¿n¤À
- 4916
- ÂI¦W
- 62
- §@·~¨t²Î
- Windows 7
- ³nÅ骩¥»
- Office 20xx
- ¾\ŪÅv
- 150
- ©Ê§O
- ¨k
- ¨Ó¦Û
- ¥x¥_
- µù¥U®É¶¡
- 2010-4-30
- ³Ì«áµn¿ý
- 2025-3-13
               
|
¥»©«³Ì«á¥Ñ Hsieh ©ó 2013-11-26 23:43 ½s¿è
¦^´_ 1# missbb
§A¬On¾ã²z¸ê®Æ¦¨¬°¸ê®Æ®w«¬ºA§a- Sub ex()
- Dim OT$, Ary(), r&, y$, a$, i%, s&
- Set dic = CreateObject("Scripting.Dictionary")
- Set dic1 = CreateObject("Scripting.Dictionary")
- r = 2
- With Sheets(1)
- Do Until .Cells(r, 2) = ""
- OT = IIf(.Cells(r, 1) <> "", .Cells(r, 1), OT)
- y = Split(.Cells(r, 2), "¦~")(0)
- a = Split(.Cells(r, 2), "¦~")(1)
- If InStr(a, "-") > 0 Then
- ar = Split(a, "-")
- For i = Val(ar(0)) To Val(ar(1))
- dic(y & "¦~" & i & "¤ë" & OT) = .Cells(r, 3)
- dic1(y & "¦~" & i & "¤ë") = ""
- Next
- Else
- dic(y & "¦~" & a & OT) = .Cells(r, 3)
- n = .Cells(r, 2)
- dic1(.Cells(r, 2) & "") = ""
- End If
- r = r + 1
- Loop
- ay = Array("®É¬q", "Á~ª÷", "¥[¯Z")
- ReDim Preserve Ary(s)
- Ary(s) = ay
- s = s + 1
- For Each ky In dic1.keys
- ReDim Preserve Ary(s)
- Ary(s) = Array(ky, dic(ky & ay(1)), dic(ky & ay(2)))
- s = s + 1
- Next
- With Sheets(2)
- .Columns("A:C") = ""
- .[A1].Resize(s, 3) = Application.Transpose(Application.Transpose(Ary))
- End With
- End With
- End Sub
½Æ»s¥N½X |
|