有没有一种方法来改变使用VBAmacros代码优秀所有表中的Excel图表标题?

我试图用excel VBAmacros函数去编辑约72页的图表标题,但问题是,如果excel表格在跨networking共享的情况下,并且有时Excel中的VBAmacros被禁用,excel表格的macros将被禁用工作表不工作。

所以根据这里find的解决scheme: 是否有一种方法来添加VBAmacros代码的Excel?

我做了下面的代码来改变标题,但它不按预期工作。

var newStandardModule = xlWorkBook2.VBProject.VBComponents.Add(vbext_ComponentType.vbext_ct_StdModule); var codeModule = newStandardModule.CodeModule; var lineNum = codeModule.CountOfLines + 1; var macroName = "ReplaceAll"; var codeText = "Sub " + macroName + "()" + "\r\n"; codeText += " For Each sh In Worksheets \r\n For Each ch In sh.ChartObjects \r\n If ch.Chart.HasTitle Then \r\n ch.Chart.ChartTitle.Text = VBA.Replace(ch.Chart.ChartTitle.Text, \"CurrentSKU_HD_Model_FW\",\""+sku+"\""+", 1) \r\n End If \r\n Next \r\n Next" + "\r\n"; codeText += "End Sub"; codeModule.InsertLines(lineNum, codeText); var macro = string.Format("{0}!{1}.{2}", xlWorkBook2.Name, newStandardModule.Name, macroName); xlWorkBook2.Application.Run(macro); xlWorkBook2.SaveAs(filename2); 

有人可以让我知道我错了吗?

编辑:我试图添加在相同的macros使用C#就像在回答的问题中给出的,它执行完美,但是当我试图执行我插入的macros时,它通过C#代码调用时不工作。 加上我插入的vbamacros,在进入Excelmacros文件并执行时,工作得非常好。