我需要帮助解决excel中的问题。我有一张包含相对于单元格值(image1)
的分布的工作表我已经设法让新工作表中的所有值重复必要的次数,如图2所示,但我找不到找到这些值的标题(我只能自动检索第一个非零值)值标题,而不是其他标题)
任何人都可以帮我解决这个问题吗?
提前致谢
答案 0 :(得分:0)
我接受了这个挑战。试一试,看看它是不是你想要的。 它不会打印标题值。
Option Explicit
Sub PivotData()
Dim wf As WorksheetFunction
Set wf = Application.WorksheetFunction
With ActiveSheet
'Count the number of rows needed
Dim countRange As Range
Set countRange = Range("D2", .Cells(.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row, .Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column))
Dim rCount As Long
rCount = wf.Count(countRange)
'Loop through countRange and fill array
Dim r As Range
Dim i As Long
ReDim arr(rCount - 1, 2) As Variant
For Each r In countRange
If r > 0 Then
arr(i, 0) = .Cells(r.Row, 1).Value
arr(i, 1) = .Cells(1, r.Column).Value
arr(i, 2) = .Cells(r.Row, r.Column).Value
i = i + 1
End If
Next r
'Print array back to the worksheet 3 rows after the last used row
.Cells(.Rows.Count, 1).End(xlUp).Offset(3, 0).Resize(rCount, 3) = arr
End With
End Sub
与往常一样,可能有更好的方法。但我相信这对你有用。 : - )