前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >『Excel进化岛精华曝光』 VSTO插件开发的撤销功能实现

『Excel进化岛精华曝光』 VSTO插件开发的撤销功能实现

作者头像
Excel催化剂
发布2023-04-26 15:33:03
5970
发布2023-04-26 15:33:03
举报
文章被收录于专栏:Excel催化剂Excel催化剂

只要保证插件功能不破坏用户原有数据,就算错了,重来一次即可。不破坏原数据,其实最好的方案是用自定义函数实现,如果需要用按钮功能,只需要将生成的新数据写入到新工作表或新区域即可。Excel催化剂大量的功能遵循此原则来处理。

当然很多用户很想要,在做定制开发时,客户要的都是合理的,给过钱买服务,要做就做呗。

翻阅了一下互联网的分享,深入分享的并不多,可能时代变了,大家都包装成付费知识来私域分享了。

找到ICells插件作者的两篇分享,还不错,可以了解下原理。

https://www.cnblogs.com/iCells/articles/16691392.html

https://www.cnblogs.com/iCells/articles/16694342.html

其实上面文章,也只是搬运微软官方文档为主,可以看下原出处,这些演练的文档还不错,如果看懂了,就是一个小demo。

https://learn.microsoft.com/zh-cn/visualstudio/vsto/walkthrough-calling-code-in-a-vsto-add-in-from-vba?view=vs-2019&tabs=csharp

当然自己手动写代码,只要某一小段没理解到,就失败告终,所以最佳的方式是有一个完整的demo项目可以下载学习,更高效。

笔者现在大量的分享,特别是带示例案例分享,都转移到了知识星球,想高效深入学习,可以进来看看。本文的demo示例已经分享在其中了。 https://t.zsxq.com/0bLAZMgc0

上面的VSTO实现撤销功能,本质上是VSTO开放接口给外部VBA语言来调用,但如果使用ExcelDNA框架开发,并不需要这么麻烦,项目中还要带一个xlam文件来实现撤销。

ExcelDNA除了开发自定义函数最有效,想开发撤销功能,直接在项目里写代码即可,OnAction的属性,可以直接调用ExcelDNA里的代码。

例如笔者在Excel催化剂插件中实现的一些鼠标右键功能,也是一个套路,这部分的功能,其实是在【自定义函数.xll】文件里开发完成的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-03-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Excel催化剂 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档