我有一张目前在我们的建筑工地上使用的工具表,每个工地上有多少种工具,看起来像这样:
我正在尝试创建一个公式,该公式将列出站点上的工具,并跳过那些未显示在工具旁边的数量的工具。我尝试创建一个顶部行的下拉列表,该列表将确定公式向下看的哪一列-在纸上看起来很简单,但我正在努力将其付诸实践。
任何建议都值得赞赏。谢谢
答案 0 :(得分:0)
如果您希望使用VBA代码完成任务,请尝试:
Sub test2()
Dim i As Long, LastCol As Long, LastRow As Long, j As Long, AddCol As Long, LastRowNew As Long
Dim SiteName As String
With ThisWorkbook.Worksheets("Sheet1")
LastCol = .Cells(2, .Columns.Count).End(xlToLeft).Column
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
AddCol = 3
For i = 3 To LastCol
.Cells(1, LastCol + AddCol).Value = .Cells(1, i).Value
For j = 2 To LastRow
If .Cells(j, i).Value <> 0 Then
LastRowNew = .Cells(.Rows.Count, (LastCol + AddCol)).End(xlUp).Row
.Cells(LastRowNew + 1, LastCol + AddCol).Value = .Cells(j, i).Value
.Cells(LastRowNew + 1, (LastCol + AddCol) - 1).Value = .Cells(j, 2).Value
End If
Next j
AddCol = AddCol + 3
Next i
End With
End Sub
输出: