使用VSTO移植VBA.docx

上传人:王** 文档编号:1625069 上传时间:2024-11-25 格式:DOCX 页数:10 大小:185.85KB
下载 相关 举报
使用VSTO移植VBA.docx_第1页
第1页 / 共10页
使用VSTO移植VBA.docx_第2页
第2页 / 共10页
使用VSTO移植VBA.docx_第3页
第3页 / 共10页
使用VSTO移植VBA.docx_第4页
第4页 / 共10页
使用VSTO移植VBA.docx_第5页
第5页 / 共10页
使用VSTO移植VBA.docx_第6页
第6页 / 共10页
使用VSTO移植VBA.docx_第7页
第7页 / 共10页
使用VSTO移植VBA.docx_第8页
第8页 / 共10页
使用VSTO移植VBA.docx_第9页
第9页 / 共10页
使用VSTO移植VBA.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
资源描述

《使用VSTO移植VBA.docx》由会员分享,可在线阅读,更多相关《使用VSTO移植VBA.docx(10页珍藏版)》请在优知文库上搜索。

1、运用VSTO移植VBAVSTO事实上是一系列的Visua1.Studio.NET工铁板,运过它来引导我开发创基于Office的解决方案.这里的项目针仅对文档殿审目.VSTO解决方案的优点许多,照实现代码与效据文件分别、有利于爱护代码和便利功能更需、平安方面的地加M-WMIVSTo,是这个VS2010版本.短过几天的学习、撰案,发觉移植VBA已径支得特别简洁.VSTO的书程少,而且有点过时.买了一本基于VB2005的VSTO开发指南,收获不大,还不如,MSDN但是IKwi上的示例代码,对于习慎VBA的等程序员用户来耕,对象引用、属性和方法的运用等,还是有救生疏.因此,进行了一笠卷试,力争象运用V

2、BA一样的方式,未移植我的VBA这个项目制试包括以下两个方面,-X用VS2010定制功能区示例.二、移植VBA代码到VSro示例.运行环境,一、运行下面的附件示例文件,须要以下3个系统必备组件,请大家自行下载安装.见4楼地址1、/引Microjoft.NETFumework4C1.ientProfi1.e(x86和x64)3MicrosoftVisua1.Studio2010Too1.sforOfficeRuntime(x86W4)语言包-简体中文3、WindowsInsta1.1.er3.1二、OfficeI%*:2007或2010自定义功区步,1、文件菜单新建项目,在口中选界wEXCE1.

3、2010工作.滔西i1.B9WiMT02E4J瘴序掠条;wua三己笈XoWWiHViu1.tCWidowsWebOffice2010IWCkudRp0n9*XPMMSi1.vedigheWCFWorkRw碇icVisua1.BsiC%53BasicVBg1.BtMCVihmIBasicVisua1.Bd;ic5s3BasicVu4Basic3、生成折建项目界面,修改工作表名称.muSabsiu皿m,MWxm*vmo加as,*三:,f-3*fcuC,UI:IrOj*T.n保4、项目菜单鼻加新鹏,在窗口选界.功能区(可视化设计=)*.5打开“工具箱,瓶放-Tab*到设计功能区的U部,创建新Tab.

4、并在右下的属性窗口中修改相应的属性,如1.ab1.eI1.性值改为VSTO掾作工作表”.BoxButton8uttonGroupCheckBoxComboBoxDropDownEditBoxGa1.kryGroup1.abe1.MenuScpantorSpIitButton6、推放-Group到新建的Tab区域,在右下的属性口中修改相应的属性,如1.ab1.eII性值改为“工作表掾作”.7、推放Butten”到新建的Tab区域,在右下的属性口中修改相应的H性,如1.ab1.e属性值改为逆历工作表,岸加图标、更改COntrO1.SiZe属性为aRibbonControISize1.arge*.t

5、n1CH*/VI*H-.,Mim.C11*.TwUIiUtcUctaMicOP)r”i4U3tampettti1.4”Ktfb:-TUK*U*4.rtteva(*XfM0*vI.M1.e%0i4iji1.m比纤Wtiti值,SMCtttftMW1k.-5,wrift*HZAMIFwae*O)AeSt11M!11.3越Pcei5It.ww*CmArTa5I.1.IMjMmNraM.Y23EUjUAXPVtwvi*aBmItfC1.Q1.AmWUt9V)A1.ir*Mn.CC11.TmUBIUmR4.*./.!IUUImMmJ-QI*己胜利定制你的“自定义功能区”,起先体验代码电.1楼附件里的移植

6、VBA完整代码,不包括VSTO模板代码.I三pPUb1.iCC1.assKibbon1.Pub1.icProtectOffOnAPrivateSubRibbon1.1.oad(ByVa1.sendersSystem.Object.ByVn1esRibhon1.IEventArgs)Hand1.esMy1.1.ase.1.jadEndSubPrivateSubButton1.C1.iCk(ByVn1.sendersSystem.Object,ByVa1.esMicrosoft.Office.Too1.s.Ribbon.RibbonContro1Eventrgs)Hand1.esButton1.a

7、C1.ickCa1.1.1.istSheetsOEndSubSub单元格写入值ODimi&WithG1.oba1.s.ThiSWorkbOok.WorksheetSr工作表一”)se1.ectO.RANGECAkBn二名称,数fiJFori=2To10.rangeCA&i).VA1.UE2=数据-&i.range(B&i).VAU2=i*(100-i*10)NextiEndWithEndSbSub1.istSheetsO遍历工作表并生成书目Dimi&,j&kiMSgBox(请确认工作表未爱护!“&Chr(IO)&这是一个综合示例,包括&Chr(IO)&“I、遍历:作表:&ChI-(IO)4*2

8、;获得特定名称T的位置&Chr(IO)&飞、运用&Chr(IO)4把数组中的信写入工作表;&Chr(IO)&5、选择工作表0”)WithG1.oba1.s.ThisWorkbookIorksheets(工作表书目se1.ect()j=.Worksheets11E*).index,确定起先提取工作表名称的位置,还是确定数组大小的舂数k=.Worksheets.Coun1.-j确定单元格区域大小DimRngAsExce1.Range-Worksheets*I:作表书目).Range(B3).Resizu(k.1)DimArr(OTok-1,0Io0)AsString数组从。起先Fori=j+1To

9、.Iorksheets-CountArr(i-j-10)=.Worksheets(i).NumcNextiRng.Va1.ue2=ArrEndWithEndSubSubButton2_C1.ick(ByVa1.senderAsSystem.Object,ByVa1esMicrosoft.Office.Too1.s.Ribbon.RibbonContro1EventArgs)Hand1.esButton2.C1.ickWithG1.oba1.seThisWorkbook.orksheets(工作表书目se1.ect0IfProtectOffOn=0Then.WorksheetsC工作表书目)pr

10、11ect(password:=123456)Pro1.ectOffOn=1MSgBoX工作表已爱护!再次点击此按钮会解除爱护.“)E1.seIfProtectOffOn=1Then.Iorkshee1.sC工作表书目“).unprotect(gSSBCrd:=12M56)Pro1.cc1.OffOn=0MSgBOXr已撤消工作表爱护!再次点击此按钿会重新爱护,EndIfEndWithEndSubPrivateSubBu11on4_C1ick(ByVa1.senderAsSystem.Object,ByVa1.eAsMicrosoft.Office.Too1.s.Ribbon.RibbonCo

11、ntro1.EventArgs)Hand1.esButton1.C1.ickMSXBoXr此示例更改最终一个工作表的名称为更名工作表。WithG1.oba1.s.ThisWorkbook.Worksheets(.Worksheets.Count),nase=更名工作表”EndWithEndSubPrivateSubButton3_C1.ick(ByVa1.senderAsSystem.Object,ByYa1.eAsMicrosoft.Office.Too1.s.Ribbon.RibbonContro1EventArgs)Hand1.esBu1.ton3.C1.ickMSXBoKr此示例圳除最

12、终一个工作我。WithG1.oba1.s.ThisWorkbook.IorksheetsCWorksheets.Count),de1.ete()EndWithEndSubPriva1.oSubButton5C1.ick(ByVa1.senderAsSystem.Object,ByVa1.eAsMicrosoft.Office.Too1.s.Ribbon.RibbonContro1EventArgs)Hand1.esRuttOn5.C1.ickMSXBOXr此示例在最终增加一个工作衣。)WithG1oba1s.This,orkbook.Borksheets.dd(After:=.Workshee

13、ts(.Uorksheets.Count)EndWithEndSubPrivateSubBUttOn6C1.ick(ByVa1.senderAsSystem.Object,ByVa1.eAsMicrosoft.Office.Too1.s.Ribbon.RibbonContro1EventAres)Hand1.esBUtIon6,C1.ickCa1.I单元格写入值OEndSubPrivateSbButton?C1.ick(ByVa1.senderAsSystem.Object,ByVa1.eAsMicrosoft.Office.Too1.s.Ribbon.RibbonContro1EventArgs)Hand1.esButton7.C1.ickCn1.1.单元格写入优OMSgHOX1.下面起先传序)WithGIOba1.s.ThisWorkbook.Workshezsr工作表一).range(*AB*).sort(key1:=.rangeB1*

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机应用/办公自动化

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!