动态更改工作表标题

时间:2013-04-11 18:04:20

标签: excel excel-vba charts excel-2003 vba

我有几个.xls文件,其工作表名称与其文件名相同。由于使用每个.xls文件更新工作表名称,因此我当前拥有的代码不会动态更新。

有没有办法动态更新工作表名称,以便可以在所有.xls文件中使用代码?

Range("A3:E4500").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SetSourceData Source:=Sheets("named").Range("A3:E4500"), _
PlotBy:=xlColumns

其中“named”将动态变化。我尝试将此添加到代码但是如果给出错误消息。 WBname为每个工作表提供正确的名称,但“Source”不喜欢该字符串。

Dim WBname As String
WBname = Replace(ActiveWorkbook.Name, ".xls", "")
Application.ScreenUpdating = False
Range("A3:E4500").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SetSourceData Source:=Sheets("WBname").Range("A3:E4500"), _
PlotBy:=xlColumns

1 个答案:

答案 0 :(得分:2)

WBname是一个变量。在Double Quotes里面它变成了一个字符串。

试试这个

更改

ActiveChart.SetSourceData Source:=Sheets("WBname").Range("A3:E4500"), _ PlotBy:=xlColumns

到此。

ActiveChart.SetSourceData Source:=Sheets(WBname).Range("A3:E4500"), _ PlotBy:=xlColumns