|
5学分
各位老师好,谁能帮我解决我这个问题
- Sub 折分数据()
- Dim arr
- Dim i&, j&, k&, l&
- arr = Range("a1").CurrentRegion
- If UBound(arr) < 4 Then Exit Sub
- Dim data()
- ReDim data(1 To 5, 1 To 1)
- l = UBound(arr, 2)
- For i = 4 To UBound(arr)
- For j = 8 To l - 1
- If Len(arr(i, j)) > 0 Then
- k = k + 1
- ReDim Preserve data(1 To 5, 1 To k)
- data(1, k) = arr(i, 1)
- data(2, k) = arr(i, 2)
- data(3, k) = arr(3, j)
- data(4, k) = arr(i, j)
- data(5, k) = arr(i, l)
- End If
- Next
- Next
- If k > 0 Then
- With Worksheets("sheet2")
- .Range("a1").CurrentRegion.ClearContents
- .Range("a1").Resize(, 5) = Array("标题", "发生日期", "费用分类", "发生费用", "备注信息")
- .Range("a2").Resize(k, 5) = WorksheetFunction.Transpose(data)
- With .Range("a1").CurrentRegion.Borders
- .LineStyle = xlContinuous
- End With
- End With
- End If
- End Sub
复制代码
|
|