使用 C# 使用 Microsoft Office Interop excel 图表中的自定义数据标签 Excel
custom datalabels in excel charts with C# using Microsoft Office Interop Excel
我使用 Microsoft Office Interop Excel 使用 C# 在 Excel 中创建了一个图表,但我在自定义数据标签时遇到了问题
SeriesCollection seriesCollection7 = myChart7.Chart.SeriesCollection();
Series series7 = seriesCollection7.NewSeries();
series7.XValues = xValues7;
series7.Values = values7;
Excel.DataLabel dl1 = (Excel.DataLabel)series7.DataLabels(); // ERROR HERE
dl1.NumberFormat = "#0.0%";
您可以尝试使用以下代码来自定义数据标签。
Excel.Application app = new Excel.Application();
app.DisplayAlerts = false;
object misValue = System.Reflection.Missing.Value;
Excel.Workbook workbook = app.Workbooks.Open("D:\3.XLSX");
Excel.Worksheet worksheet = workbook.ActiveSheet;
Excel.Range xlRange = worksheet.UsedRange;
Excel.ChartObjects xlCharts = (Excel.ChartObjects)worksheet.ChartObjects(Type.Missing);
Excel.ChartObject myChart = worksheet.ChartObjects(1);
Excel.Chart chartPage = myChart.Chart;
Excel.Series series1 = (Excel.Series)chartPage.SeriesCollection(1);
series1.HasDataLabels = true;
Excel.DataLabel dl1 = series1.DataLabels(1);
dl1.Text = "Test1";
workbook.Save();
workbook.Close(true, misValue, misValue);
我做了一个柱形图,我设置了第一个数据标签的第一个点。
喜欢以下内容:
选项 1(感谢@Jack-J-Jun-MSFT)
chartPage7.ApplyDataLabels(Excel.XlDataLabelsType.xlDataLabelsShowValue, false, true, false, false, false, true, true);
series7.HasDataLabels = true;
Excel.DataLabel dl1 = series7.DataLabels(0);
dl1.NumberFormat = "#,0%";
选项 2
chartPage7.ApplyDataLabels(Excel.XlDataLabelsType.xlDataLabelsShowValue, false, true, false, false, false, true, true); // set label
series7.DataLabels().NumberFormat = "#,0%";
我使用 Microsoft Office Interop Excel 使用 C# 在 Excel 中创建了一个图表,但我在自定义数据标签时遇到了问题
SeriesCollection seriesCollection7 = myChart7.Chart.SeriesCollection();
Series series7 = seriesCollection7.NewSeries();
series7.XValues = xValues7;
series7.Values = values7;
Excel.DataLabel dl1 = (Excel.DataLabel)series7.DataLabels(); // ERROR HERE
dl1.NumberFormat = "#0.0%";
您可以尝试使用以下代码来自定义数据标签。
Excel.Application app = new Excel.Application();
app.DisplayAlerts = false;
object misValue = System.Reflection.Missing.Value;
Excel.Workbook workbook = app.Workbooks.Open("D:\3.XLSX");
Excel.Worksheet worksheet = workbook.ActiveSheet;
Excel.Range xlRange = worksheet.UsedRange;
Excel.ChartObjects xlCharts = (Excel.ChartObjects)worksheet.ChartObjects(Type.Missing);
Excel.ChartObject myChart = worksheet.ChartObjects(1);
Excel.Chart chartPage = myChart.Chart;
Excel.Series series1 = (Excel.Series)chartPage.SeriesCollection(1);
series1.HasDataLabels = true;
Excel.DataLabel dl1 = series1.DataLabels(1);
dl1.Text = "Test1";
workbook.Save();
workbook.Close(true, misValue, misValue);
我做了一个柱形图,我设置了第一个数据标签的第一个点。
喜欢以下内容:
选项 1(感谢@Jack-J-Jun-MSFT)
chartPage7.ApplyDataLabels(Excel.XlDataLabelsType.xlDataLabelsShowValue, false, true, false, false, false, true, true);
series7.HasDataLabels = true;
Excel.DataLabel dl1 = series7.DataLabels(0);
dl1.NumberFormat = "#,0%";
选项 2
chartPage7.ApplyDataLabels(Excel.XlDataLabelsType.xlDataLabelsShowValue, false, true, false, false, false, true, true); // set label
series7.DataLabels().NumberFormat = "#,0%";