【百分求助】导出图片到excel

sljz 2009-10-22 11:45:52
现在做的页面中,一个是用 MSChart 生成的图片,图片下面有一个 Gridview,现在实现了点击 button 将 Gridview 数据导出到指定的 Excel 中。

想实现:

将 图片 导入 Excel 中,放在 第二个 Sheet 中。 即 第一个 Sheet 存放 Gridview 的表格,第二个 Sheet 存放 图片。
...全文
290 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuanghuannahappy 2012-02-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wuyq11 的回复:]
操作多sheet,操作excel模板,打开模板赋值给单元格,再添加sheet添加图片
private Excel.Application m_objExcel = null;
private Excel.Workbooks m_objBooks = null;
private Excel._Workbook m_objBook = null;
private Excel.Sheets m_……
[/Quote]

为什么我用这个方法一直提示有无效参数呢?
Name_456 2010-12-20
  • 打赏
  • 举报
回复
protected void LinkButton2_Click(object sender, EventArgs e)
{
GridView1.AllowPaging = false;
DataBind();
Response.Clear();
Response.Buffer = true;
Response.Charset = "GB2312";
//下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开
//filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc    .xls    .txt   .htm
Response.AppendHeader("Content-Disposition", "attachment;filename=FileFlow.xls");
Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
//Response.ContentType指定文件类型 可以为application/ms-excel、application/ms-word、application/ms-txt、application/ms-html 或其他浏览器可直接支持文档
Response.ContentType = "application/ms-excel";
this.EnableViewState = false;
// 定义一个输入流
System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
GridView1.AllowPaging = false;
GridView1.RenderControl(oHtmlTextWriter);
//this 表示输出本页,你也可以绑定datagrid,或其他支持obj.RenderControl()属性的控件
Response.Write(oStringWriter.ToString());
Response.Flush();
Response.End();

GridView1.AllowPaging = true;
DataBind();


}
jiangtengy 2010-12-20
  • 打赏
  • 举报
回复
大哥请问你是怎么解决的??谢谢!!在线等!1
youkrer 2010-01-08
  • 打赏
  • 举报
回复
你好,请问你的问题解决了吗?我也要实现同样的功能,可是没有找到解决方案。如果你解决了,可以告诉我一下吗?谢谢!
lghndyz 2009-10-22
  • 打赏
  • 举报
回复
帮顶!!
takako_mu 2009-10-22
  • 打赏
  • 举报
回复
用xml做。
zhong2006 2009-10-22
  • 打赏
  • 举报
回复
using Excel
successful_cdr 2009-10-22
  • 打赏
  • 举报
回复
SF
liaoyukun111 2009-10-22
  • 打赏
  • 举报
回复
把图片 搞成二进制
FileStream fs = new System.IO.FileStream(Server.MapPath("a.jpg"), System.IO.FileMode.Open);
byte[] buf = new byte[fs.Length];
fs.Read(buf, 0, (int)fs.Length);
string s = Convert.ToBase64String(buf);
存的时候就转下就,下面就不会了,也只是想法,没有实现
bl_song 2009-10-22
  • 打赏
  • 举报
回复
http://www.cnblogs.com/dahuzizyd/archive/2007/04/11/709283.html
wuyq11 2009-10-22
  • 打赏
  • 举报
回复
操作多sheet,操作excel模板,打开模板赋值给单元格,再添加sheet添加图片
private Excel.Application m_objExcel = null;
private Excel.Workbooks m_objBooks = null;
private Excel._Workbook m_objBook = null;
private Excel.Sheets m_objSheets = null;
private Excel._Worksheet m_objSheet = null;
private Excel.Range m_objRange = null;
private object m_objOpt = System.Reflection.Missing.Value;

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://topic.csdn.net/u/20081223/15/a3a4b011-9280-4084-b3c3-eb62e3a46a93.html
Adechen 2009-10-22
  • 打赏
  • 举报
回复
先读图片到stream里,再写入excel
(纯想法未实现)

62,052

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧