Excel VBA – 以编程方式更改图表的来源?

我有这个Excel文件,其中包含几个目标是所有预定义的命名范围的图表。 问题是,图表所需的引用出于某种原因需要包含文档的名称。 我已经设法在表格中添加文档的文件名。 但是当分配图表的来源时,我不能直接定位这个单元格。

所以,当我编辑图表并select源代码时,它看起来像这样:

='MyExcelDocument.xlsm'!Graphs_TotCost 

由于某些原因,当我定位包含文件名的单元格时,Excel无法理解。 所以我可能不得不通过一个macros来做到这一点,首先定义一个stringvariables,将文档名称分配给该string。 然后分配完成的string结合Graphs_TotCost 。 那么,如何selectSheet3中的图表,并使用macros更改该图表的来源?

你可以用这种语句来改变一个图的来源:

 Charts("Chart1").ChartWizard Source:="Graphs_TotCost" 

您也可以使用Chart对象的SetSourceData方法。