乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 147|回复: 9

如何把vba程序换成vb程序?复杂吗?

[复制链接]

16

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
107
发表于 2005-7-20 14:36:00 | 显示全部楼层 |阅读模式
现在做好一个vba程序,但是要求换成vb,里面有5个公共模块,和3个类模块,一个窗体,容易实现吗?没弄过,高手帮忙
回复

使用道具 举报

16

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
107
发表于 2005-7-20 15:28:00 | 显示全部楼层
找到一些介绍文档,在vb的project/reference选择autocad release 15,我的cad是2002,没找到上述内容,只好选择autocad2002类型库,然后在vb窗体下设了个按钮,添加如下代码,可是cad怎么不画图呢?大家给看看:
Private Sub Command1_Click()
On Error Resume Next
Dim acadApp As AcadApplication
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
    Err.Clear
    Set acadApp = CreateObject("AutoCAD.Application")
    If Err Then
        MsgBox Err.Description
        Exit Sub
    End If
End If
MsgBox "Now running" + acadApp.Name + "vertion" + acadApp.Version
Dim acadDoc As AcadDocument
Set acadDoc = acadApp.ActiveDocument
Dim lineObj As AcadLine
Dim p1(2) As Double
Dim p2(2) As Double
p1(0) = 1: p1(1) = 2: p1(2) = 5
p2(0) = 100: p2(1) = 200: p2(2) = 0
Set lineObj = acadDoc.ModelSpace.AddLine(p1, p2)
ZoomAll
End Sub
回复

使用道具 举报

85

主题

1175

帖子

11

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1518
发表于 2005-7-20 19:48:00 | 显示全部楼层
不复杂,我就是在vba下编程调试好再转到vb下编译的。只要将document等关键字修改一下就可以了。
回复

使用道具 举报

11

主题

41

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
85
发表于 2005-7-20 22:09:00 | 显示全部楼层
如果有VB基础就不难
回复

使用道具 举报

16

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
107
发表于 2005-7-21 08:33:00 | 显示全部楼层
谢谢两位!二楼兄台,可否把你的步骤说一下,实在是着急啊,这个周末之前必须弄出来啊,谢谢,不胜感激
回复

使用道具 举报

13

主题

396

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
448
发表于 2005-7-21 08:49:00 | 显示全部楼层
上面代码没问题啊,我刚试过,完全可以画图!
回复

使用道具 举报

16

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
107
发表于 2005-7-21 10:00:00 | 显示全部楼层
问题来了,上面的代码确实对,但是必须先打开autocad2002,才可画图,如果没有开cad直接运行VB程序,程序将打开一个acad.exe,进程ID号为1092,但是这样根本打不开cad2002,我的CAD进程ID为1904,而且一点错误提示都没有,只能在任务管理器进程中看到那个1092
回复

使用道具 举报

16

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
107
发表于 2005-7-21 15:25:00 | 显示全部楼层
谁有用VB写的程序,我参考一下,最好是有多个公共模块和类模块,现在我的程序已经很庞大,从Vba到VB实在不好改,参考一下你们怎么写的!
回复

使用道具 举报

16

主题

43

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
107
发表于 2005-7-21 15:54:00 | 显示全部楼层
我的邮箱y1982_0@126.com  或y1982_0@hotmail.com,谢谢高手帮忙,感激不尽

回复

使用道具 举报

12

主题

135

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
183
发表于 2005-7-22 10:32:00 | 显示全部楼层
其实VBA转VB并不复杂,将相应的模块等导出,到VB中在导入.设定相应的函数引用,就可以了,具体你可以参考""的文章,我就是和他学的.
另外,在此还是想和各位高手谈谈,如何能获得当前激活的ACAD.
因为如果启动了多个acad程序,上面的代码仅能获得第一个acad程序.如果我需要的不是第一个acad怎么办?
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-4 01:23 , Processed in 0.462415 second(s), 73 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表