2011-11-16 358 views
2

我有一个VBA代码行中的一个看起来像这样如何在Excel公式中动态更改工作表名称?

analysisSheet.Cells(I,tempCell).FormulaR1C1 = “= AVERAGE( '数据1'! - [R [-2] C [-7 ])“

我希望能够更改'Data1'表,以便用户可以动态地选择他/她想要分析的工作表。例如,如果用户选择“数据2" 然后代码将运行这样。

analysisSheet.Cells(I,tempCell).FormulaR1C1 = “= AVERAGE( '数据2'! - [R [-2] C [ -7])”

我尝试创建的字符串变量,并把在,但没有奏效。

没有人有任何想法? 预先感谢您。

+0

你想如何更改名称?它是在VBA模块中完成的吗? – frenchie

+1

显示您在尝试使用字符串变量时所写的内容。 –

回答

3

你应该能够使用字符串变量,例如SheetName作为y ou描述:

Dim SheetName As String 
SheetName = "Data3" 
analysisSheet.Cells(i, tempCell).FormulaR1C1 = "=AVERAGE('" & SheetName & "'!R[-2]C[-7])" 
+0

哦,我不知道。非常感谢! – js0823