1 新建工程中选择"外接程序",点击打开之后右侧的属性窗口即显示为MyAddIn工程。(注意如果你使用的是VB精简版的没有"外接程序"的选项,请下载完整版的)

 

2 右击MyAddIn,点击MyAddIn属性,你可以修改工程名称(暂时不需要修改别的东西),点击确定

 

3 展开窗体文件夹,右击frmAddIn,点击移除frmAddIn,结果只剩下设计器(里面有一个Connect文件)

 

4 右击这个Connect文件,点击查看代码,然后删除全部代码

 

5 双击Connect文件,修改应用程序为Microsoft Excel,依次如图所示(你也可以修改外接程序显示名称和描述)

 

6 点击左侧的下拉列表,选择AddInstance,随后代码自动变成了"Private Sub……"我们只在里面写一个Msgbox作为测试,然后去拉右侧列表,选择OnDisconnection,在里面也加入一个Msgbox

 

7 此时可以保存文件了,注意格式是Dsr文件

 

8 然后点击文件,生成MyFirstCOMAddIn.dll,点击确定之后即可生成。

 

9 手工注册这个dll文件,方法是打开运行对话框,输入"Regsvr32+空格+dll文件路径"

Regsvr32 C:\Users\Administrator.ACE--20120120JX\Desktop\Connect\MyFirstCOMAddIn.dll

 

10 随后启动Excel即可发现该COM得到了加载,关闭的时候也一样

 

11 如果是想要做成软件,则可以做一个批处理命令,先解压到一个指定目录,然后注册dll文件即可。当然,你如果想要"卸载"这个软件,反注册一下这个dll文件即可。命令是:"regsvr32 /u+空格+dll文件路径",此外如果你下次要编辑这个程序,直接双击Dsr文件即可。

regsvr32 /u C:\Users\Administrator.ACE--20120120JX\Desktop\Connect\MyFirstCOMAddIn.dll

 

12 当然,你也可以把COM加载项这个菜单显示出来,点击工具-自定义,在命令选项卡中点击工具,把右侧的"COM加载项"拖放到工具条上

 

13 这样你就可以选择启动那个COM加载项了,不变一直注册和反注册dll文件。

如何使用VB编写Excel的COM组件的更多相关文章

  1. C#/VB.NET Excel数据分列

    C#/VB.NET Excel数据分列 有时候我们需要将保存在Excel单元格中的组合型数据拆分为多列(如将全名拆分为姓和名两列)以方便我们处理.记忆或保存.为了避免重复和大量的手动输入工作,Exce ...

  2. 用VB操作Excel的方法

    VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便.因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报 ...

  3. 计算机管理系统——VB与Excel联系

    今天爆震室管理系统--学生查看机器状态的时候发现有一个"导出到excel"的button.我去.感情还得跟excel表链接. 于是我咬碎了一地小银牙.一个下午都在查询vb与exce ...

  4. VB中Excel 2010的导入导出操作

    VB中Excel 2010的导入导出操作 编写人:左丘文 2015-4-11 近来这已是第二篇在讨论VB的相关问题,今天在这里,我想与大家一起分享一下在VB中如何从Excel中导入数据和导出数据到Ex ...

  5. 编写轻量ajax组件01-对比webform平台上的各种实现方式

    前言 Asp.net WebForm 和 Asp.net MVC(简称MVC) 都是基于Asp.net的web开发框架,两者有很大的区别,其中一个就是MVC更加注重http本质,而WebForm试图屏 ...

  6. VB操作EXCEL文件

    用VB操作Excel(VB6.0)(整理) 首先创建Excel对象,使用ComObj:Dim ExcelID as Excel.ApplicationSet ExcelID as new Excel. ...

  7. VB编写的验证码生成器

    验证码(CAPTCHA)是“Completely AutomatedPublicTuring test to tell Computers andHumansApart”(全自动区分计算机和人类的图灵 ...

  8. Laravel 项目中编写第一个 Vue 组件

    和 CSS 框架一样,Laravel 不强制你使用什么 JavaScript 客户端框架,但是开箱对 Vue.js 提供了良好的支持,如果你更熟悉 React 的话,也可以将默认的脚手架代码替换成 R ...

  9. java通过poi编写excel文件

    public String writeExcel(List<MedicalWhiteList> MedicalWhiteList) { if(MedicalWhiteList == nul ...

随机推荐

  1. redis之有序集合类型(Zset)——排行榜的实现

    当数据库对排序支持的不是很好,可以利用redis有序集合排序 原文链接:http://blog.csdn.net/loophome/article/details/50373202

  2. dubbo与zookeeper学习中的问题

    环境: spring5.1.5 dubbo 2.6.2 异常信息: java.lang.NoClassDefFoundError: org/apache/curator/RetryPolicy at ...

  3. [ Luogu 1273 ] 有线电视网

    \(\\\) \(Description\) 一棵\(N\)个节点的树,编号在\([N-M+1,N]\)内的点必定为叶子节点,且这些点都有一个收益值\(Val_i\),同时每一条树边都有一个代价. 访 ...

  4. Python学习日记之练习代码

    # -*- coding:utf-8 -*- number = 23 test=True while test: guess=int(raw_input('输入数字')) if guess==numb ...

  5. 如何快速排查解决Android中的内存泄露问题

    概述 内存泄露是Android开发中比较常见的问题,一旦发生会导致大量内存空间得不到释放,可用内存急剧减少,导致运行卡顿,部分功能不可用甚至引发应用crash.对于复杂度比较高.多人协同开发的项目来讲 ...

  6. Android 读取asset文件

    * * 从Assets中读取图片 */ private Bitmap getImageFromAssetsFile(String fileName) { Bitmap image = null; As ...

  7. tomcat 访问IP直接访问项目

    apache-tomcat-7.0.52\conf下server.xml文件 <Connector connectionTimeout="20000" port=" ...

  8. python多进程和多线程编程

    17 多线程和多进程并发 The modules described in this chapter provide support for concurrent execution of code. ...

  9. vue 使用vue-i18n做全局中英文切换

    1.vue-i18n安装 npm install vue-i18n --save-dev 2.在main.js文件中引入 import VueI18n from 'vue-i18n'; Vue.use ...

  10. 搜索--P1605 迷宫

    题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...