VSTO新建Excel插件项目,并使用VSTO880框架改善编码体验
请点击文章下方的 阅读原文
注意项目目录 尽量保持和我的教程目录一致 设置在D:\VSTO880\Project
注意框架版本 VS2022需要安装4.0和4.5的框架
在群文件获取
打开VS 新建项目 选择VSTO模板
新建完成得到如下界面
在右侧解决方案 项目文件夹右键添加–>新建-可视化功能区
先移除默认的选项卡 这个处于功能区 加载项标签 一般都不用它
再右键添加新选项卡 工具箱中依次拖动Group和Buttondao到右侧Ribbon面板上
在Ribbon中添加按钮 双击进入事件代码 添加代码如下
可以看到以前直接访问range属性这些都要加很长的前缀
非常不方便 这里我给大家提供的Excel880VSTO框架 可以让代码书写变得和VBA一样简单
Private Sub Button1_Click(sender As Object, e As RibbonControlEventArgs) Handles Button1.Click
'A1单元格写入当前时间
Globals.ThisAddIn.Application.Range("A1").Value = Now
'对话框弹出当前选定区域的地址
MsgBox(Globals.ThisAddIn.Application.Selection.address)
'A2单元格写入当前工作表的名称
Globals.ThisAddIn.Application.Range("A2").Value = Globals.ThisAddIn.Application.ActiveSheet.name
End Sub
使用Excel880VSTO框架后 代码精简如下 具体用法继续往下看
Private Sub Button2_Click(sender As Object, e As RibbonControlEventArgs) Handles Button2.Click
'EXCEL880VSTO框架加持后和VBA写法几乎一致
'A1单元格写入当前时间
Range("A1").Value = Now
'对话框弹出当前选定区域的地址
MsgBox(Selection.address)
'A2单元格写入当前工作表的名称
Range("A2").Value = ActiveSheet.name
End Sub
下载好Excel880VSTO.DLL文件,本框架会持续更新
总是使用最新版即可
在刚才新建的项目文件中 新建Lib文件夹 DLl复制进去
右侧解决方案–>引用–>添加引用选择刚才的Excel880VSTO.DLL文件
ThisAddin和Ribbon代码区顶部添加Import语句
这样 上面的精简版代码就生效 以后就可以和写VBA代码一样来写VSTO代码了!!!
选中A1:B10区域,全体输入1,选中B1设置黄色背景色,再设置文字加粗 录制得到VBA代码如下
这段代码复制到VSTO中,在没有Excel880VSTO框架的情况下 会看到很多报错 需要逐句修改
而使用了Excel880VSTO框架后 这段代码 可以直接运行!
具体用VBA转VSTO细节在1.3-1.9学习,后续会不断增加核心框架能力
从VS新建一个新项目,调用Excel880VSTO框架,录制一个宏,新增一个sheet,并改名为 aaa ,尝试移植代码到VSTO中 点击按钮执行
更多VBA和VSTO教程, 请访问我的新网站, VBAYYDS.COM (VBA永远的神)
联系客服