使用 Visual Studio 2005 Tools for Office (VSTO)开发C# Excel 程序
Posted on 2007-07-23 16:38 sunrack 阅读(7131) 评论(3) 编辑 收藏 举报1、准备开发环境
VS2005
Office 2003
Microsoft Office 2003 Interop 組件。
Visual Studio 2005 Tools for Office
一般情况下,Office 安装的先后没有关系
VS2005 Team 版的带了Visual Studio 2005 Tools for Office ,但professional版本的需要自行安装
2、编写程序
我使用的是C#,基本上感觉很方便,但需要注意以下几点:
1)与 Excel COM Interop Libraries 的区别
选择区域时,VSTO Globals.Sheet1.Cells[row, index] as Excel.Range
但 Excel COM 正好相反
2)需要注意写入Excel时的效率
如果数据量比较大,最好不要逐个单元格写入,而应该使用数组写入方式:
object[,] objData = new Object[maxRowCountData, maxColumnCountData];
for (int i = 1; i < data.Length - 1; i++)
//给objData 赋值
Excel.Range CurRange = GetRange(x1, y1, x2, y2);//选择要写入的区域
CurRange.Value2 = objData;
3)不要使用VSOT提供的方法新建Worksheet
Excel.Worksheet newWorksheet;
newWorksheet = (Excel.Worksheet)Globals.ThisWorkbook.Worksheets.Add(
missing, missing, missing, missing);
因为该方法生成的实例和VS2005生成的实例类型不同
具体原因参考后面的参考文章
3、部署VSTO程序
客户机需要的条件:
Microsoft .NET Framework 2.0 版
Office 2003
Microsoft Office 2003 Interop
其中Microsoft .NET Framework 2.0 的安装检测不用细说,关键就是Visual Studio 2005 Tools for Office Runtime的检测
目前最好的解决办法就是,自定义系统必备组件,具体细节可以查看后面的参考文章,
我已经做好的该系统必备组件也可从这里下载:(密码"vsto" )
https://files.cnblogs.com/sunrack/packages.rar
下载后,放到
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages
然后就可以在安装部署项目中选择该系统必备组件了
一下是安装时检测到没有安装Visual Studio 2005 Tools for Office Runtime时的截图