Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 7811|回复: 12

如何用vb6.0外接程序设计excel2003中直接能调用的自定义函数

[复制链接]
发表于 2011-4-18 10:17 | 显示全部楼层 |阅读模式
Option Explicit
Public app As Excel.Application

'Private Sub IDTExtensibility2_OnConnection(ByVal Application As Object, ByVal ConnectMode As AddInDesignerObjects.ext_ConnectMode, ByVal AddInInst As Object, custom() As Variant)
'Set app = Application
'MsgBox 1
'End Sub
'
'
'
'Private Sub IDTExtensibility2_OnDisconnection(ByVal RemoveMode As AddInDesignerObjects.ext_DisconnectMode, custom() As Variant)
'
'Set app = Nothing
'MsgBox 2
'End Sub

Private Sub AddinInstance_OnConnection(ByVal Application As Object, ByVal ConnectMode As AddInDesignerObjects.ext_ConnectMode, ByVal AddInInst As Object, custom() As Variant)
Set app = Application
MsgBox 1
End Sub

Private Sub AddinInstance_OnDisconnection(ByVal RemoveMode As AddInDesignerObjects.ext_DisconnectMode, custom() As Variant)
Set app = Nothing
MsgBox 2
End Sub


Function Str(ByVal ran As Range) As String
Dim r As Range
Set ran = Range("b1:b10")
For Each r In ran
  Str = Str & r
Next r
End Function

问题1:如何修改程序使得当这个外接程序封装成dll文件后,只要excel2003加载了这个dll文件后就能直接使用自定义函数str.
问题2:如果在这个外接程序中将初始化行为设置为load on demand并生成dll文件后,那么在excel2003中若要使用该加载宏该怎么加载?
若选择load  at next startup only  与none分别代表什么,在excel2003中需要用时又该怎么加载?
问题3:
IDTExtensibility2_OnConnection事件的作用是什么?该怎么用?

dll加载宏(学习时的问题).rar

3.26 KB, 下载次数: 73

 楼主| 发表于 2011-4-18 11:33 | 显示全部楼层
回复

使用道具 举报

发表于 2011-4-18 13:02 | 显示全部楼层
回复

使用道具 举报

发表于 2011-4-18 13:16 | 显示全部楼层
发现大家都研究得很深!
回复

使用道具 举报

 楼主| 发表于 2011-4-18 14:40 | 显示全部楼层
回复 阿童木 的帖子

谢谢你了,阿童木老师,只是这些帮助的确太专业了, 有很多东西理解起来有些困难呀!
比如这里我有一个demend的dll加载宏,在excel的可用加载项列表中可以看到他,并且前面打着勾,加载行为是按需要加载(目前尚未加载),假如我现在需要用它了,该怎么加载这个加载宏呢?请指点。
还有麻烦您能做个用外接程序设计的excel自定义函数com加载宏的示例吗,谢谢了。

demend.rar

3.51 KB, 下载次数: 38

回复

使用道具 举报

发表于 2011-4-18 15:43 | 显示全部楼层
这个不是我做的,但是可以用,参考一下吧 源码.rar (10.31 KB, 下载次数: 205)
回复

使用道具 举报

 楼主| 发表于 2011-4-19 08:57 | 显示全部楼层
回复 阿童木 的帖子

谢谢你了,老师,只是还有个问题麻烦您指点一下呀!我有一个名为demend的加载宏(vb中设置其初始化行为是load on demend),生成dll文件后在excel的可用加载项列表中可以看到他,并且前面打着勾,加载行为的描述是按需要加载(目前尚未加载),假如我现在需要用它了,该怎么加载这个加载宏呢?请指点。
回复

使用道具 举报

 楼主| 发表于 2011-4-19 09:02 | 显示全部楼层
本帖最后由 Saint_Zuo 于 2011-4-19 09:07 编辑

不出意外的话,明天我们这里就要封网络了。各位老师不但水平高,而且讲解耐心细致,论坛的学习氛围也相当好,对我的帮助实在太大了,再次感谢各位了。我还真的舍不得这里,舍不得大家呀!
回复

使用道具 举报

发表于 2012-5-2 21:13 | 显示全部楼层
新手,刚开始接触,来学习一下
回复

使用道具 举报

发表于 2012-5-2 23:36 | 显示全部楼层
本帖最后由 leolee82 于 2012-5-3 09:48 编辑

那个接口0................
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-3 15:53 , Processed in 0.638971 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表