用于excel图表范围的C#中的Series.values? [英] Series.values in C# for excel chart range?

查看:103
本文介绍了用于excel图表范围的C#中的Series.values?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对excel有疑问,请让我帮忙如何解决。下面是我现在正在使用的代码,但它不起作用。

在最后一侧代码series.values应该更新excel文件最近更新,所以我该如何使用它。我这样做是为了增加图表范围。

请查看下面的代码并让我知道如何解决它。

在预先感谢,任何问题都会让我回复。



我尝试了什么:



 Excel.Application app =  new  Excel.Application(); 
// Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel._Worksheet表;
Excel.ChartObject chartObj;
Excel._Chart chart;
Excel.Series系列;
object useDefault = Type.Missing;
Excel.Workbook书;
Excel.ChartObjects grph;

xlWorkBook = app.Workbooks.Open( @ E:\\ test \\\DTS-CODE); // 打开工作簿
sheet = xlWorkBook.Sheets [ Trend_NCM]; // 选择图表所在的表格
char oldformula,newformula;
long i,s;
Excel.Range orng = null ;
string [] stmp,sbase;
string cha,rta;
string 起始点,端点;
chart = sheet.ChartObjects( Chart 1)。chart;
chart.SetSourceData(sheet.Range [ A2:A7],Excel.XlRowCol .xlRows);


for (s = 1 ; s < chart.SeriesCollection()。count; s ++)
{
string sting = < span class =code-string> = SERIES(Trend_NCM!$ A $ 3,Trend_NCM!$ B $ 2:$ AH $ 2,Trend_NCM!$ B $ 3:$ AH 3,1 $);
// series.Values
rta = chart.SeriesCollection(s)。式;
// foreach(sbase in chart.SeriesCollection()。count)
// series = rta.Chart.SeriesCollection();
// series = chart.SeriesCollection(s).Formula;
series = null ;
cha = chart.SeriesCollection(s).Formula;

string [] cha1 = cha.Split(' );
string [] cha2 = cha1 [ 2 ]。拆分(' :');
起点= cha2 [ 0 ];
// endpoint = cha2 [1];
范围xlrange = ;
Excel.Range last = sheet.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell,Type.Missing);
Excel.Range range = sheet.get_Range( A1,last);
int iTotalColumns = sheet.UsedRange.Columns.Count;
// Excel.Range xlRange = sheet.UsedRange;
// xlrange = sheet.get_Range(xlrange.EntireRow.Address,useDefault);
// endpoint = iTotalColumns.ToString();
endpoint = Trend_NCM!$ AH $ 5;
** series.Values =起始点+ & amp; + + & amp; + endpoint; **

}

解决方案

A

3,Trend_NCM!


I have an issue with the excel , please let me help how can i solve it. Below is the code which is i'm using now , but its not working .
at last side code series.values should update excel file as recently updated , so how can i use it. i'm doing this to increase the chart range.
Please check below code and let me know how to solve it.
Thanks in Advance , for any quires revert me back.

What I have tried:

     Excel.Application app = new Excel.Application();
     // Excel.Application xlApp;
      Excel.Workbook xlWorkBook;
      Excel._Worksheet sheet;
      Excel.ChartObject chartObj;
      Excel._Chart chart;
      Excel.Series series;
      object useDefault = Type.Missing;
      Excel.Workbook book;
      Excel.ChartObjects grph;

      xlWorkBook = app.Workbooks.Open(@"E:\\test\\DTS-CODE");//Open the work book
      sheet = xlWorkBook.Sheets["Trend_NCM"];//Select the sheet the chart is on
      char oldformula , newformula;
      long i, s;
      Excel.Range orng = null;
      string[] stmp, sbase;
      string cha, rta;
      string startingpoint, endpoint;
      chart = sheet.ChartObjects("Chart 1").chart;
      chart.SetSourceData(sheet.Range["A2:A7"], Excel.XlRowCol.xlRows);


      for (s = 1; s < chart.SeriesCollection().count;s++)
      {
string sting = "=SERIES(Trend_NCM!$A$3,Trend_NCM!$B$2:$AH$2,Trend_NCM!$B$3:$AH$3,1)";
          //series.Values
          rta = chart.SeriesCollection(s).Formula;
         // foreach(sbase in chart.SeriesCollection().count)
          //series = rta.Chart.SeriesCollection();
         // series = chart.SeriesCollection(s).Formula;
           series= null ;
          cha = chart.SeriesCollection(s).Formula;

          string[] cha1 = cha.Split(',');
          string[] cha2 = cha1[2].Split(':');
          startingpoint = cha2[0];
          //endpoint = cha2[1];
          Range xlrange = null;
          Excel.Range last = sheet.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell, Type.Missing);
          Excel.Range range = sheet.get_Range("A1", last);
        int iTotalColumns = sheet.UsedRange.Columns.Count;
         // Excel.Range xlRange = sheet.UsedRange;
     // xlrange = sheet.get_Range(xlrange.EntireRow.Address, useDefault);
       // endpoint = iTotalColumns.ToString();
          endpoint = "Trend_NCM!$AH$5";
          **series.Values = startingpoint+ "&amp;"+ ":" +"&amp;"+ endpoint;**

      }

解决方案

A


3,Trend_NCM!


B


这篇关于用于excel图表范围的C#中的Series.values?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆