|
id="iframe808053_0" src="about:blank" width="120" height="240" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="word-wrap: break-word; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;">
有网友发过这样的贴子:http://club.excelhome.net/viewth ... 0%CC%E5%B5%BC%C8%EB 我也碰到了相同的问题,导入后不是窗体了,而是在设计器里。是导入方法错了,还是使用上有问题? |
|
|
|
|
|
|
|
id="iframe808088_0" src="about:blank" width="120" height="240" align="center,center" vspace="0" hspace="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true" style="word-wrap: break-word; border-width: 0px; border-style: initial; vertical-align: bottom; margin: 0px;">
vba转到vb几乎就是1+1的问题,直接转化下就行了吧 |
|
|
|
|
|
|
|
3楼
楼主
|
发表于 2009-11-20 18:32
|
只看该作者
|
楼主
已解决,从来都是VB或VBA下写程序,从没试过两者之间导入或导入,也没试过把VBA窗体封装在DLL中。 附导入方法和调用方法: 1、VBA中在窗体上点击右键,选择导出,得到一个后缀为frm的窗体文件; 2、在VB工程资源管理器中点右键,选择添加,再选择添加文件,选中上述导出的frm文件,点击打开按键,窗体会被加至VB工程资源管理器的设计器中(窗体中的代码被同步复制),你可以双击打开查看对象,右键选择查看代码; 3、假设工程名为:TestSystem,已导入的窗体名为UserForm1,新建一个类:Test,在Test类中写入代码如下:
- Sub Wahaha()
- Dim Ts As New TestSystem.UserForm1
- Ts.Show vbModal
- Set Ts= Nothing
- End Sub
复制代码
4、存盘,生成TestSystem.dll; 5、在VBA工程中Show窗体的方法:当然先引用TestSystem后,代码如下:
- Private Sub CommandButton1_Click()
- Dim ABC As New TestSystem.Test
- ABC.Wahaha
- Set ABC = Nothing
- End Sub
复制代码
6、完工!点击CommandButton1后即可Show出封装在DLL文件的窗体。 [ 本帖最后由 ctincob 于 2009-11-20 18:46 编辑 ] |
|
|
|
|
|
|
|
5楼
发表于 2014-7-26 12:32
|
只看该作者
|
自己
“5、在VBA工程中Show窗体的方法:当然先引用TestSystem后,代码如下:” 为什么不是在vb工程中呢?本次的目的是要将vba的窗体导入到vb中使用。 |
|
http://club.excelhome.net/thread-503954-1-1.html