乐筑天下

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

请问在VBA中如何调用CAD程序打开DWG文件

[复制链接]

6

主题

12

帖子

4

银币

初来乍到

Rank: 1

铜币
36
发表于 2008-7-23 08:23:00 | 显示全部楼层 |阅读模式
请问在VBA中如何调用CAD程序打开DWG文件
ShellExecute 0, "open", dwgfile, vbNullString, vbNullString, vbNormalFocus //运行不通过,提示没有这个函数定义
Shell "acad.exe " + dwgfile //找不到acad.exe文件
Shell "c:\program files\2005\acad.exe" + dwgfile  //这样可以运行,但是把路径写死了
有个办法:找到acad.exe程序路径,但不知道如何寻找
回复

使用道具 举报

11

主题

326

帖子

9

银币

后起之秀

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

铜币
370
发表于 2008-7-23 21:41:00 | 显示全部楼层
通过注册表可以找到ACAD.exe的路径,但如果要打开某一个DWG,在VBA中,你不能直接使用thisdrawing.open ,或者ThisDrawing.Application.Documents.Open来打开图吗?
回复

使用道具 举报

3

主题

103

帖子

5

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
115
发表于 2008-7-24 23:00:00 | 显示全部楼层
你是想用VB还是想用VBA,是Office的VBA还是CAD的VBA?
Private WithEvents acadApp As AcadApplication
Private WithEvents acadDoc As AcadDocument
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
  Err.Clear
  Set acadApp = CreateObject("AutoCAD.Application")
  If Err Then
    MsgBox "ErrorNumber:" & Err.Number & vbNewLine & "Source:" & Err.Source & vbNewLine & Err.Description, 16 ' "无法运行AutoCAD2000,请检查是否安装了AutoCAD 2000", 16
    Set acadApp = Nothing
    End
  End If
End If
acadApp.WindowState = acMax
acadApp.Visible = True
Set acadDoc = acadApp.Documents.Add    '添加文档
acadDoc.Open "c:\aa.dwg"
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-4 06:46 , Processed in 0.676570 second(s), 58 queries .

© 2020-2025 乐筑天下

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