我正在使用Visual Studio 2013與Excel 2013連接來生成圖表。我嘗試訪問圖表上的替代文字。如果圖是牀單上,我使用這個腳本:C#Excel圖表替代文本
Excel.Application oXL;
Excel.Workbook oWB;
Excel.Worksheet oSheet;
oXL =(Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
oWB = (Excel.Workbook)oXL.ActiveWorkbook;
oSheet = (Excel.Worksheet)oWB.ActiveSheet;
oSheet.Shapes.Item(1).Title = "2016-02-17 A$16$";
直到圖表是在片材中的工作,問題是當圖表是獨立的圖表,在這種情況下,我使用此代碼:
Excel.Application oXL;
Excel.Workbook oWB;
Excel.Chart cht;
oXL = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
oWB = (Excel.Workbook)oXL.ActiveWorkbook;
cht = (Excel.Chart)oWB.ActiveChart;
chart.Shapes.Item(1).Title = "2016-02-17 A$16$";
在這種情況下當我嘗試計數形狀是給我0,我不知道如何獲得替代文字。
我檢查了VBA這個問題,以及,然而,在C#事件,如果我使用此代碼:
Excel.Application oXL;
Excel.Workbook oWB;
Excel.Worksheet oWS;
oXL = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application");
oWB = (Excel.Workbook)oXL.ActiveWorkbook;
oWS = (Excel.Worksheet)oWB.Worksheets[1];
oWS.Shapes.Item(1).Title = "2016-02-17 A$16$";
oWS.Shapes.Item(1).AlternativeText= "2016-02-17 A$16$";
如果圖表獨立圖表片,形狀的計數仍然是0。
爲什麼標記爲C#? –
因爲我在Visual Studio 2013中使用C#來連接Excel 2013 –