- 帖子
- 2839
- 主題
- 10
- 精華
- 0
- 積分
- 2895
- 點名
- 0
- 作業系統
- 〔略〕
- 軟體版本
- 〔略〕
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 〔略〕
- 註冊時間
- 2013-5-13
- 最後登錄
- 2025-2-15
|
10#
發表於 2016-7-25 19:15
| 只看該作者
回復 9# aer
程式碼很簡單, 多看幾次應可以理解:
- Sub TEST()
- Dim Arr, Brr, i&, j%, T, N&
- With Sheets("Sheet1").UsedRange
- Arr = .Value
- ReDim Brr(1 To .Count, 1 To 3)
- End With
- For i = 2 To UBound(Arr)
- For j = 2 To UBound(Arr, 2)
- If Arr(i, j) <> "" Then
- N = N + 1: T = Split(Trim(Arr(i, j)), "梯")
- Brr(N, 1) = Arr(i, 1)
- Brr(N, 2) = T(0) & "梯"
- Brr(N, 3) = T(1)
- End If
- Next j
- Next i
- With Sheets("Sheet2")
- .UsedRange.Clear
- If N = 0 Then Exit Sub
- .[A1:C1] = Array("姓名", "梯次", "日期")
- .[A2:C2].Resize(N) = Brr
- Application.Goto .[A1]
- End With
- End Sub
複製代碼 |
|