All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
asp.net2.0中使用session进行用户登录验证
Visual,Studio,2008英文正式版已经发布在MSDN_[Asp.Net教程]
.NET基础知识-公共语言运行时_[Asp.Net教程]
SQL,Prompt:SQL智能完成工具_[SQL,Server教程]
在MySQL中定义外键_php资料_编程技术
VS2005+SQL2005,ASP.NET2.0数据库连接_[Asp.Net教程]
用PHP程序实现从数组里筛选出重复的数据_php资料_编程技术
ASP.NET,2.0中使用样式、主题和皮肤_.net资料_编程技术
SQLServer2005中的XML选项详解(2)_[SQL Server教程]
第三篇:使用Visual,Studio,2008实现基本的页面交互_[Asp.Net教程]
Reading number is top 10 pictures
So beauty, will let you spray blood7
China's zhejiang university to create the world's most light material
农夫山泉变身记
传奇套装
Chinese paper-cut grilles art appreciation8
Fender Bender that so horrifying1
这酸爽,让人不敢相信
你是左脑型还是右脑型
So beauty, will let you spray blood1
鸡也看毛片
Download software ranking
Unix video tutorial7
Boxer's Top ten classic battle8
jdk1.5
SP3 for SQL2000
少妇苏霞全本
The hero
Tram sex maniac 2 (H) rar bag15
Sora aoi, the maid, students' uniforms
matrix1
Tram sex maniac 2 (H) rar bag4
归海一刀 published in(发表于) 2014/1/30 1:01:05 Edit(编辑)
C#向Excel报表中插入图片的2种方法_[Asp.Net教程]

C#向Excel报表中插入图片的2种方法_[Asp.Net教程]

C#向Excel报表中插入图片的2种方法_[Asp.Net教程]

使用之前需要引用COM:Microsoft Office 11.0 Object Library 和 Microsoft Excel 11.0 Object Library
简单包装的类:加入App_Code 内
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Excel = Microsoft.Office.Interop.Excel;


/**////


/// InsertPictureToExcel 的摘要说明
///

public class InsertPictureToExcel
{
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 Open()
{
this.Open(String.Empty);
}


/**////


/// 功能:实现Excel应用程序的打开
///

/// 模板文件物理路径
public void Open(string TemplateFilePath)
{
//打开对象
m_objExcel = new Excel.Application();
m_objExcel.Visible = false;
m_objExcel.DisplayAlerts = false;


if (m_objExcel.Version != "11.0")
{
//MessageBox.Show("您的 Excel 版本不是 11.0 (Office 2003),操作可能会出现问题。");
m_objExcel.Quit();
return;
}


m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks;
if (TemplateFilePath.Equals(String.Empty))
{
m_objBook = (Excel._Workbook)(m_objBooks.Add(m_objOpt));
}
else
{
m_objBook = m_objBooks.Open(TemplateFilePath, m_objOpt, m_objOpt, m_objOpt, m_objOpt,
m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt);
}
m_objSheets = (Excel.Sheets)m_objBook.Worksheets;
m_objSheet = (Excel._Worksheet)(m_objSheets.get_Item(1));
m_objExcel.WorkbookBeforeClose += new Excel.AppEvents_WorkbookBeforeCloseEventHandler(m_objExcel_WorkbookBeforeClose);
}


private void m_objExcel_WorkbookBeforeClose(Excel.Workbook m_objBooks, ref bool _Cancel)
{
//MessageBox.Show("保存完毕!");
}


/**////


/// 将图片插入到指定的单元格位置。
/// 注意:图片必须是绝对物理路径
///

/// 单元格名称,例如:B4
/// 要插入图片的绝对路径。
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);
}


/**////


/// 将图片插入到指定的单元格位置,并设置图片的宽度和高度。
/// 注意:图片必须是绝对物理路径
///

/// 单元格名称,例如:B4
/// 要插入图片的绝对路径。
/// 插入后,图片在Excel中显示的宽度。
/// 插入后,图片在Excel中显示的高度。
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);
//参数含义:
//图片路径
//是否链接到文件
//图片插入时是否随文档一起保存
//图片在文档中的坐标位置(单位:points)
//图片显示的宽度和高度(单位:points)
//参数详细信息参见:http://msdn2.microsoft.com/zh-cn/library/aa221765(office.11).aspx
m_objSheet.Shapes.AddPicture(PicturePath, Microsoft.Office.Core.MsoTriState.msoFalse,
Microsoft.Office.Core.MsoTriState.msoTrue, PicLeft, PicTop, PictuteWidth, PictureHeight);
}


/**////


/// 将Excel文件保存到指定的目录,目录必须事先存在,文件名称不一定要存在。
///

/// 要保存成的文件的全路径。
public void SaveFile(string OutputFilePath)
{
m_objBook.SaveAs(OutputFilePath, m_objOpt, m_objOpt,
m_objOpt, m_objOpt, m_objOpt, Excel.XlSaveAsAccessMode.xlNoChange,
m_objOpt, m_objOpt, m_objOpt, m_objOpt, m_objOpt);


this.Close();
}
/**////


/// 关闭应用程序
///

private void Close()
{
m_objBook.Close(false, m_objOpt, m_objOpt);
m_objExcel.Quit();
}


/**////


/// 释放所引用的COM对象。注意:这个过程一定要执行。
///

public void Dispose()
{
ReleaseObj(m_objSheets);
ReleaseObj(m_objBook);
ReleaseObj(m_objBooks);
ReleaseObj(m_objExcel);
System.GC.Collect();
System.GC.WaitForPendingFinalizers();
}
/**////
/// 释放对象,内部调用
///

///
private void ReleaseObj(object o)
{
try
{
System.Runtime.InteropServices.Marshal.ReleaseComObject(o);
}
catch { }
finally { o = null; }
}
}


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default7.aspx.cs" Inherits="Default7" %>





无标题页











onClick="Button1_Click" />





using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;



public partial class Default7 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{


}
protected void Button1_Click(object sender, EventArgs e)
{
string picPath1 = FileUpload1.PostedFile.FileName;
string picPath2 = FileUpload2.PostedFile.FileName;


InsertPictureToExcel ipt = new InsertPictureToExcel();
ipt.Open();
ipt.InsertPicture("B2", picPath1);
ipt.InsertPicture("B8", picPath2, 120, 80);
ipt.SaveFile(@"D:\ExcelTest.xls");
ipt.Dispose();
}
}


来源:cnblogs







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.