首页 > 解决方案 > 在多个工作表的一列中填写工作表名称

问题描述

我有代码将工作表名称插入每张工作表的字段(有 80 多张工作表)。

我想将工作表名称插入一个单元格并填写到每张工作表的最后一行。

我收到错误:

Sub nameSheet()
For Each x In Worksheets
    x.Range("F2" & LastRow) = x.Name
Next x
End Sub

标签: excelvba

解决方案


正如@BigBen 所说,您需要定义 LastRow

有一个特殊的单元格属性称为 xlCellTypeLastCell。这很方便使用,因为您的最后一个单元格可以在任何地方。另外我会做 Lastrow + 1,这样你就不会覆盖任何东西。

 Sub nameSheet()
 Dim x As Worksheet

 For Each x In Worksheets
    lastrow = x.Cells.SpecialCells(xlCellTypeLastCell).Row
    x.Range("F" & lastrow + 1) = x.Name
 Next x

 End Sub

推荐阅读