创建Excel解决方案样本.doc
《创建Excel解决方案样本.doc》由会员分享,可在线阅读,更多相关《创建Excel解决方案样本.doc(29页珍藏版)》请在咨信网上搜索。
1、资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。VSTO之旅系列(二): 创立Excel解决方案 -02-24 18:00:150本专题概要 引言 创立VSTO项目 Excel对象模型 创立Excel外接程序 创立Excel文档级自定义项 小结一、 引言可能很多朋友都没有听说过VSTO这个东西的, 本人之前也同样也不知道的, 可是由于工作的原因接触了这方面, 由于VSTO方面国内的资料比较少, 本人刚开始学习的时候都是参考MSDN的, 可是上面很多资料都是英文的, 可能学习起来会比较慢点, 因此本人把最近一段时间学习的内容记录下来, 一来是作为一个巩固的学习笔记, 二来希望这些博客能
2、够帮助一些刚接触VSTO的朋友能够有所借鉴。讲了这么多废话(指的上面一些过渡的话), 到底VSTO到底是什么呢?这里我简单的概括下的VSTO是微软推出一种对Office产品进行操作的技术, 其中提供了一些类库来让开发人员能够更方便地开发出Office的解决方案,即对Word/Excel/Outlook实现一些扩展功能。对于VSTO的更多介绍大家能够参看该系列的第一篇博文。在这个专题将为大家介绍下, 如何创立Excel的解决方案?二、 创立VSTO项目对于刚接触VSTO的朋友来说, 可能根本就不知道如何去创立一个VSTO的项目的, 相信经过这个部分大家就会觉得是如此的简单。环境的搭建进行VSTO
3、开发的环境搭建是相当简单的, 只需要安装Visual Studio (当然安装VS 的时候在安装组件中必须勾选VSTO选择, 这个选项是默认勾上的。大家能够在安装VS的时候留意下)和Office 就能够, 当然VS 和Office 的安装也能够完成环境的搭建。创立第一个Excel工程来开始我们的VSTO之旅第一步, 选择新建项目-Visual C#-Office- , 然后选择Excel 外接程序(如何是英文版即Excel Add-in), 如下图: 从图中能够看到, 除了外接程序外, 还有Excel模板和Excel文档这两种项目类型, 她们的区别是 外接程序是应用程序级别的, 即如果你创立了
4、Excel 外接程序, 该程序对所有Excel应用都是有效的, 因为每次Excel的启动过程都会加载该插件(即该程序), 大家肯定留意到当我们启动Excel或Word的时候都会加载一些加载项, 其实这些加载项就是属于外接程序, 即插件, 启动过程见下面图: 而 文档和模板项目, 都是属于文档级别的程序, 该程序只对当前文档和模板有效, 创立这两种类型的项目, 会在项目的工程目录下会生成一个word文件(文档项目会生成一个 Document1.docx文件, 模板项目会生成一个Document1.dotx文件)。创立成功之后, 外接程序的项目文件结构见下图: 从图中能够看出, 刚创立的VSTO外
5、接程序都只有一个ThisAddIn.cs文件, 该文件即是一个宿主项(更多关于宿主项和宿主控件的内容能够查看该系列的第一篇博文), 我们能够经过这个文件来对Excel对象进行访问。同时该类中有ThisAddIn_Startup和ThisAddIn_Shutdown两个方法, 从两个方法中命名中能够知道, 如果你的代码想在加载外接程序时运行的话, 就放把代码放在ThisAddIn_Startup方法内容, 如果你想在外接程序卸载的时候运行你的代码, 就把这些代码放在ThisAddIn_Shutdown方法内。三、 Excel对象模型要开发Excel的项目, 就自然少不了对Excel对象模型的了解
6、了, 只有了解Excel对象模型, 这样才能更好地对Excel进行处理。下面先给出一张Excel对象模型的图: 下面就具体对上图中的各个对象做一个简单的介绍: Application对象Excel中的Application对象表示Excel应用程序, 该对象是所有Excel对象的根, 你能够经过Application对象, 获取到其它对象, 在外接程序中, 我们能够经过下面的方式来获得Application对象: Globals.ThisAddIn.ApplicationWorkbooks对象代表Workbook对象的集合, 而Workbook对象表示Excel中的单个工作簿, 我们能够经过下
7、面的方式来获得工作簿对象: Globals.ThisAddIn.Application.ThisWorkbookWorksheets对象代表Worksheet对象的集合, 而Worksheet代表的就是Excel中的表, 下面的代码能够获得Worksheet对象: Globals.ThisAddIn.Application.ThisWorkbook.ActiveSheet (激活的表, 每次打开一个Excel文件, 都是表一即sheet1被激活, 因此经过该代码就说获得表一对象)Range对象代表一个范围, 是操作Excel文档最常见的对象, 它能够表示为一个单元格、 一行、 一列或多个单元格
8、块( 能够连续, 也能够不连续) 的单元格选定范围, 甚至多个工作表中的一组单元格。可能上面的解释过于枯燥, 相信大家经过下图能够更好地理解Excel中的各个对象: 四、 创立Excel外接程序介绍完了Excel对象模型之后, 我们就能够利用这些对象来对Excel文档进行操作了, 下面就创立一个简单的Excel外接程序的。首先我们模拟一个需求, 大多说软件在使用时都会弹出一个欢迎界面, 这样我们就创立一个外接程序, 每次打开Excel文件时弹出一个欢迎界面,退出时弹出”谢谢使用”界面。我们只需要在上面的创立工程中介入下面的代码即可: using System.Windows.Forms;nam
9、espace MyExcelAddIn1 public partial class ThisAddIn private void ThisAddIn_Startup(object sender, System.EventArgs e) / 因为欢迎使用窗口要在打开Excel的时候弹出, 因此把下面代码放在Startup方法内 MessageBox.Show(欢迎使用Microsoft Excel); private void ThisAddIn_Shutdown(object sender, System.EventArgs e) / 在退出Excel的时候弹出谢谢使用窗口, 因此把下面的代码
10、放在Shutdown方法内 MessageBox.Show(谢谢使用! ); #region VSTO generated code / / Required method for Designer support - do not modify / the contents of this method with the code editor. / private void InternalStartup() this.Startup += new System.EventHandler(ThisAddIn_Startup); this.Shutdown += new System.Eve
11、ntHandler(ThisAddIn_Shutdown); #endregion 这样, 我们就完成了上面简单的一个模拟需求了, 下面让我们按F5来测试下效果吧! 按F5运行该程序时, 首先打开一个Excel之后, 一个欢迎界面就会弹出: 点击Excel窗口上的X按钮时, 就会弹出一个 ”谢谢使用! ”的窗口, 效果如下: 点击 Ok 按钮之后才会正常退出Excel。这样就完成了一个简单的Excel外接程序了, 上面提到过外接程序是应用程序级别的, 因此当你每次打开Excel的时候都会有这样的一个欢迎界面和关闭Excel时都有一个谢谢使用窗口,有些朋友想问了, 如果我想卸载这个插件怎么办呢?
12、 方法很简单, 只需要右键你的解决方案清理, 这样能够了, 另外你也能够从开发工具选项卡COM 插件, 在弹出的窗口中选择你自定义的插件 再按下移除按钮。具体步骤见下图: 五、 创立Excel文档级自定义项介绍完了创立Excel外接程序之后, 下面看看如何创立一个文档级的项目: 1. 新建一个Excel Workbook(即Excel工作簿)项目: 2. 单击 OK按钮, 在下面的窗口中单击 ”OK”按钮: 3. 在第一创立Excel工作簿项目是会弹出下面的一个窗口( 窗口意思为: 是否允许创立的项目访问VBA项目系统) , 此时我们只需要点击”Ok”就完成了Excel工作簿项目的创立。现在我
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 创建 Excel 解决方案 样本
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。