Excel 在一张图纸中存储所有图纸的最后单元格值

Excel 在一张图纸中存储所有图纸的最后单元格值,excel,vba,Excel,Vba,那么,我如何将这些值称为一次性值呢? 我有10张不同的工作表,我想提取10张不同工作表中最后一个单元格的地址。试试这样的方法。您的问题有点不清楚,因为您既指最后一个单元格的地址(我想提取最后一个单元格的地址),也指有关值的内容(如何调用值)。上面的代码将检索最后一个单元格的地址,但也包括检索值的代码,您只需注释掉一行,取消注释另一行即可 Sub WS() Application.ScreenUpdating = False For Each Mar In ActiveWorkbo

那么,我如何将这些值称为一次性值呢?
我有10张不同的工作表,我想提取10张不同工作表中最后一个单元格的地址。

试试这样的方法。您的问题有点不清楚,因为您既指最后一个单元格的
地址
(我想提取最后一个单元格的地址),也指有关
值的内容
(如何调用值)。上面的代码将检索最后一个单元格的
地址
,但也包括检索值的代码,您只需注释掉一行,取消注释另一行即可

Sub WS()
    Application.ScreenUpdating = False
    For Each Mar In ActiveWorkbook.Worksheets
        Mar.Select
        ActiveCell.Value = Selection.SpecialCells(xlCellTypeLastCell).Address(False, False)
        ActiveCell.Offset(1, 0).Select
        Next Mar
    Application.ScreenUpdating = True
End Sub

现在还不清楚你想要实现什么。你有机会尝试我建议的答案吗?地址不应该是
。值
?@SiddharthRout取决于你想要实现什么,但我读到了这句话:“我想提取最后一个单元格的地址”。+1 True:)我读了标题:D“将所有工作表的最后一个单元格值存储在一张工作表中”@SiddharthRout我做了一个修订,因为在重新阅读了这个问题后,我不确定OP是否需要这些值或地址。谢谢!
Sub LastCellAddresses()
    Dim Mar As Worksheet
    Dim myValues As Variant
    Dim i As Integer: i = 1

    '## Create an Array with one item for each worksheet
    ReDim myValues(1 To ActiveWorkbook.Worksheets.Count)

    '## iterate the worksheets and add values to the array
    For Each Mar In ActiveWorkbook.Worksheets

        '## Use one of these, depending on what you're trying to do.
        ' This line returns the ADDRESS
        myValues(i) = Mar.Cells.SpecialCells(xlCellTypeLastCell).Address
        ' OR this line returns the VALUES
        'myValues(i) = Mar.Cells.SpecialCells(xlCellTypeLastCell).Value
        i = i + 1
    Next Mar

    '## Print each value from the array in its own row, from
    '   the activeCell
    '   Modify as needed
    ActiveCell.Resize(UBound(myValues)).Value = Application.Transpose(myValues)

End Sub