Excel插件用过不少,大部分都是收费,功能多(excel百宝箱、E灵、kutools、小蓝条等),自己也破解过类似的插件(Excel插件破解教程),也曾想自己开发一个类似的插件,但也一直未动手写过。
第一次写office excel插件,仅记录和学习,当然如果你也想写一个,按照我的步骤保证你也能拥有一个属于自己的小插件!
最后我也会放一个成品供有需要的小伙伴们下载。
开发环境:
WIN7
VS2013
OFFICE 2013
第一步,创建一个插件框架,根据向导生成就可以了。
启动VS2013
点开【文件】-【新建】-【项目】
在新建项目窗口中,选择【Excel2013 外接程序】 (因为我的环境是office 2013 所以我这里选择 2013,你电脑的office是2016 你创建的时候也可以选择2016 ),然后对项目取一个名字,我这里取名:WoNiuHelper
创建完项目后,界面如下
第二步,对excel插件添加控件
我们需要对插件创建一个设计器,就是建立一个插件界面
对项目名称右键-【添加】-【新建项】
选择【功能区(可视化设计器)】-输入一个设计器的名称(当然你可以不改这个名称,因为系统默认就会有一个名称)
这个界面就是显示在excel上的界面了
先对插件改名,然后设置插件的位置(这里没设置对,插件就不会显示出来的)
位置:【开始】页面的最后面
ControlId->ControlIdType=office 如果选择office,那么OfficeId仅内置标签中的一个,如果选择的是Custom,那么OfficeId就可以自定义了 ControlId->OfficeId= 内置的有下面这些ID: TabHome=开始 TabInsert=插入 TabPageLayoutExcel=页面布局 TabFormulas=公式 TabData=数据 TabReview=审阅 TabView=视图 TabDeveloper=开发工具启动就崩了,小问题,我这里崩,你开发调试的时候也会崩,先终止启动
托管调试助手“LoaderLock”在“C:\Program Files\Microsoft Office 15\Root\Office15\excel.exe”中检测到问题。 其他信息: 正尝试在 OS 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。点击【调试】-【异常】
取消【LoaderLock】勾,点击【确定】,重新启动插件。
启动后看到检查加载了,在【开始】的最后面,这是显示在内置的标签页面中
ControlId->ControlIdType=office
ControlId->OfficeId=TabHome
Label=TabHome
这是自定义效果
ControlId->ControlIdType=Custom
ControlId->OfficeId=Tab1
Label=蜗牛插件
注意:启动调试的过程中,当你关闭office,就会终止调试
给默认的group 改名为:蜗牛的小工具
创建单选控件(CheckBox)
这里就做护眼模式的功能吧,双击护眼模式,进入事件代码
第三步,绑定事件,写代码
Excel.Application xlsApp = (Excel.Application)Globals.ThisAddIn.Application; //防止闪屏-禁止刷新 xlsApp.ScreenUpdating = false; //默认设置浅绿色 xlsApp.ActiveSheet.Cells.Interior.ColorIndex = 35; xlsApp.ActiveSheet.Cells.Borders.LineStyle = 1; //防止闪屏-恢复刷新 xlsApp.ScreenUpdating = true;
至此,一个简单的excel插件开发完成当然,这仅仅是开发过程中冰山一角,还有很多问题都需要处理的("用户自由设置配色?是否将护眼颜色保存到表格中?是否保留用户开关的设置?等等.......")
我写好的成品功能:护眼模式+十字架
成品下载地址:https://arvinhk.com/tools/ExcelHelperV1.0.2.0.zip
效果:
插件安装过程: