excel vba countifs公式引用正在更改的工作表名称

excel vba countifs公式引用正在更改的工作表名称,excel,vba,Excel,Vba,新成员和VBA的新成员。期待尽可能多的学习 现在,我正在尝试使用countifs公式计算不同工作表中某列的出现次数。不幸的是,这是一份周报,当我打开它时,每周的工作表名称都不一样 以下是我遇到问题的部分: Range("E29").Select ActiveCell.FormulaR1C1 = _ "=COUNTIFS('DynamicNameHere'!C,""failed to upgrade"")" Range("E30").Select 当我在代码中输入特定的工

新成员和VBA的新成员。期待尽可能多的学习

现在,我正在尝试使用countifs公式计算不同工作表中某列的出现次数。不幸的是,这是一份周报,当我打开它时,每周的工作表名称都不一样

以下是我遇到问题的部分:

Range("E29").Select
    ActiveCell.FormulaR1C1 = _
    "=COUNTIFS('DynamicNameHere'!C,""failed to upgrade"")"
    Range("E30").Select
当我在代码中输入特定的工作表名称时,效果非常好。我试图查找如何使用工作表代码名,但没有成功。 是否有一种方法可以指定正在更改的工作表名称,而不必通过其实际名称引用它


提前感谢

首先,您无需选择要使用的单元格

其次,您将引用vba的部分:

    Range("E29").FormulaR1C1 = _
     "=COUNTIFS('" & Sheets(2).Name & "'!C,""failed to upgrade"")"

让我添加更多细节以更详细地指定。当我收到文件时,它有一个带有自定义名称的工作表。当我运行整个代码时,它会添加一个名为sheet1的新工作表,其中包含一个数据透视表和特定单元格中的文本。“E29”在表1中,这就是我想要countifs公式结果的地方。公式本身正在引用原始自定义命名工作表中的数据。如何设置代码,以便在将来的工作簿中运行代码时,它将引用更改的工作表名称并提供更新的结果,而不必每次都给出特定的工作表名称?@GCG它是工作簿中的第一个工作表吗?您可以使用
Sheets(1)。Name
Range(“E29”)。选择ActiveCell.FormulaR1C1=“=COUNTIFS('Sheets(1)。Name'!C',failed to upgrade”“)”Range(“E30”)。选择当我尝试此操作时,它会打开一个更新值window@GCG请参见编辑,您需要从工作表公式中引用vba。已更正。现在,当我运行代码时,它给了我0作为总数,因为它引用了在运行其余代码时添加的新“sheet1”。当我查看VBE时,它显示Sheet1(更改名称)和Sheet2(Sheet1)。我将其视为原始工作表的代码名为工作表1,添加的工作表1为工作表2