C# 怎么在Excel 中插入图片?

michaelgong 2013-10-23 04:22:00
要求将图片插入到Excel 文件中的位置;

private Application m_excel;
private Workbook m_workbook;
m_excel = new Microsoft.Office.Interop.Excel.Application();
m_workbook = m_excel.Workbooks.Open(URL.Replace("/", @"\"),
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);

m_excel.Visible = true;//自动打开Excel
xSheet = (Microsoft.Office.Interop.Excel.Worksheet)m_workbook.Sheets[1];
pic2 = (Microsoft.Office.Interop.Excel.Range)m_excel.get_Range("A4", Missing.Value);
pic2.Select();
float picleft, pictop;
picleft = Convert.ToSingle(pic2.Left);
pictop = Convert.ToSingle(pic2.Top);
xSheet.Shapes.AddPicture(URL2.Replace("/", @"\"), Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue, 2, 2, 100, 100);

以上代码,Excel文件中没有图片;
...全文
639 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
熙风 2013-10-24
  • 打赏
  • 举报
回复
引用 1 楼 michaelgong 的回复:
大侠们出招啊。。。
                 sheet.Shapes.AddPicture(ds.Tables[0].Rows[row][col].ToString(), Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue, Convert.ToSingle(range.Left) + 15 + image.Width, Convert.ToSingle(range.Top) + 5, image.Width, image.Height);   //插入图片  
http://blog.csdn.net/happy09li/article/details/7431967
michaelgong 2013-10-24
  • 打赏
  • 举报
回复
大侠们出招啊。。。
熙风 2013-10-24
  • 打赏
  • 举报
回复
引用 5 楼 michaelgong 的回复:
[quote=引用 2 楼 happy09li 的回复:] [quote=引用 1 楼 michaelgong 的回复:] 大侠们出招啊。。。
                 sheet.Shapes.AddPicture(ds.Tables[0].Rows[row][col].ToString(), Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue, Convert.ToSingle(range.Left) + 15 + image.Width, Convert.ToSingle(range.Top) + 5, image.Width, image.Height);   //插入图片  
http://blog.csdn.net/happy09li/article/details/7431967[/quote] 这个插入图片之后,会生存两个Excel 文件,数据是一个文件,图片又是一个文件, 我要的是数据和图片在同一个Excel 同一个工作簿 文件里面[/quote] 这个数据是图片是在一个excel中
michaelgong 2013-10-24
  • 打赏
  • 举报
回复
引用 2 楼 happy09li 的回复:
[quote=引用 1 楼 michaelgong 的回复:] 大侠们出招啊。。。
                 sheet.Shapes.AddPicture(ds.Tables[0].Rows[row][col].ToString(), Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue, Convert.ToSingle(range.Left) + 15 + image.Width, Convert.ToSingle(range.Top) + 5, image.Width, image.Height);   //插入图片  
http://blog.csdn.net/happy09li/article/details/7431967[/quote] 这个插入图片之后,会生存两个Excel 文件,数据是一个文件,图片又是一个文件, 我要的是数据和图片在同一个Excel 同一个工作簿 文件里面
卧_槽 2013-10-24
  • 打赏
  • 举报
回复
NPOI操作

62,074

社区成员

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

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

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

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