如何定义一个等于最后一张纸(VBA)名称的变量?

时间:2019-06-28 15:10:01

标签: excel vba

我有一个Excel文件,其中至少包含两张纸:摘要纸(Sheet1),模板纸(Sheet2)和可变数量的纸。我有一个小宏,可将Sheet2复制到工作表的末尾,然后将新工作表重命名为我在输入框中键入的内容。

我还希望宏在Sheet1中使A1成为新表(“ Last Sheet”)的A1中的值的引用。但是我的问题是定义一个与新工作表名称相等的变量。

我试图运气好的情况下使用Sheets(Sheets.Count)。

Sheets("Sheet1").Range("A1").Formula = "='Sheets(Sheets.Count)'!A1"

我希望在Sheet1的A1中出现公式='NameOfTheLastSheet'!A1。 相反,Excel希望我打开一个文件来更新Sheet(Sheets.Count)的值。

(我是VBA的菜鸟,但如果我指出的方向正确,我不介意研究某些领域。)

1 个答案:

答案 0 :(得分:0)

您很亲近,只是语法方面的一些问题。

mother

由于Sheets("Sheet1").Range("A1").Formula = "='"& Sheets(Sheets.Count).Name & "'!A1" 是vba语法,用于返回工作表的名称,因此需要将其串联在实际公式字符串的其余部分之外。