如何从 3D 范围中检索所有值并插入到当前工作表中?

如何从 3D 范围中检索所有值并插入到当前工作表中?

我有一系列名为 的工作表1.. 50。我想将 3D 范围的值'1:50'!A10插入到当前工作表的范围内RawData。我该怎么做?

答案1

您可以使用offset来实现这一点。在列中A插入RawData1 到 50 的列表。在列中,B您可以使用以下公式:=Offset(char(39) & $A1 & char(39) & "!A10")。将此公式复制到下列将为您提供每个工作表 1 到 50 的B单元格中的结果。A10

如果工作表不是连续的,则可以使用以下 VBA 替代解决方案:

Sub getA10()
    Dim sht As Worksheet
    Dim writeRow As Integer

    writeRow = 1

    'iterate through all the sheets in the workbook
    For Each sht In ThisWorkbook.Worksheets

        'Don't capture A10 of RawData
        If sht.Name <> "RawData" Then

            'Write in Column A the sheet name, and in column B the Value in A10
            Sheets("RawData").Cells(writeRow, 1).Value = sht.Name
            Sheets("RawData").Cells(writeRow, 2).Value = sht.Range("A10").Value

            'increment the row
            writeRow = writeRow + 1
        End If
    Next sht
End Sub

相关内容