在c#的页面绘制柱形图已经做好了,但是Boss说让加一个把柱形图导出到Excel中的功能,找了半天都没有找到怎么做,Google里面有很多人提问的,但是没有合适的答案。
再详细一下需求:在页面上的柱形图已经画好了,但是如何把柱形图导出到Excel里面还是思路,绘制柱形图的方参考的是:
http://blog.csdn.net/gisfarmer/archive/2009/01/08/3736452.aspx,现在需要把柱形图输出到Excel里面。静候各位大侠指点,急用,已经折腾了一天了,没有一点眉目,多谢了,希望有源代码,谢谢
再详细一下需求:在页面上的柱形图已经画好了,但是如何把柱形图导出到Excel里面还是思路,绘制柱形图的方参考的是:
http://blog.csdn.net/gisfarmer/archive/2009/01/08/3736452.aspx,现在需要把柱形图输出到Excel里面。静候各位大侠指点,急用,已经折腾了一天了,没有一点眉目,多谢了,希望有源代码,谢谢
参考:
Sheet1.Shapes
Sheet1.ChartObjects
Sheet1.PivotTables
网上应该可以找到excel自动生成的图表的代码。
关键是如何在Excel中生成柱形图不知道,找了半天也没有找到例子,郁闷死了
它会自动生成图表
另一种就是把你生成的图表插入Excel中。把图表保存成图片,插入Excel中
一个日本的控件,excel作图能用上,很方便,也有例子 。
另外就是 ,按楼上说的 ,把生成的图表保存成图片,插入excel,这个就容易多了 。
public void InsertPicture(string RangeName, string PicturePath)
{
m_objRange = m_objSheet.get_Range(RangeName, m_objOpt);
m_objRange.Select();
Excel.Pictures pics = (Excel.Pictures)m_objSheet.Pictures(m_objOpt);
pics.Insert(PicturePath, m_objOpt);
}
public void InsertPicture(string RangeName, string PicturePath, float PictuteWidth, float PictureHeight)
{
m_objRange = m_objSheet.get_Range(RangeName, m_objOpt);
m_objRange.Select();
float PicLeft, PicTop;
PicLeft = Convert.ToSingle(m_objRange.Left);
PicTop = Convert.ToSingle(m_objRange.Top);
m_objSheet.Shapes.AddPicture(PicturePath,Microsoft.Office.Core.MsoTriState.msoFalse,
Microsoft.Office.Core.MsoTriState.msoTrue, PicLeft, PicTop, PictuteWidth, PictureHeight);
}
//http://blog.csdn.net/gisfarmer/archive/2009/01/08/3736452.aspx//下面为输出柱状图System.IO.MemoryStream ms = new System.IO.MemoryStream();
image.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
Response.ClearContent();
Response.ContentType = "image/Jpeg";
Response.BinaryWrite(ms.ToArray());===============================请问如何修改,才能将这个柱形图图片保存到Excel,要求是提示“打开”、“保存”,然后可以选择保存路径的那种。急啊,用其他方法实现也行,哪位帮帮我?
saveFileDialog1.Filter = "(*.xls)|*.xls";
this.saveFileDialog1.ShowDialog();
string Path = this.saveFileDialog1.FileName;
if(Path!="")
chartControl1.ExportToXls(Path);
</b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b></b>