请教高手,我成功获得了DVB工程对象,为什么不能保存该宏工程文件的修改啊
请教高手,我成功获得了DVB工程对象,为什么不能保存该宏工程文件的修改啊?即“DVBDX.Save”无效Function 获得列表框指定的宏工程对象()
On Error Resume Next
Dim 列表框选中文档名, HGCWZMC As String, I
列表框选中文档名 = ListBox1.List(ListBox1.ListIndex, 1)
If IsNull(列表框选中文档名) Or 列表框选中文档名 = "" Then
MsgBox "没有在列表框中选中任何一个宏工程文件名"
Exit Function
End If
Dim objIDE As Object
Set objIDE = Application.VBE
For I = 0 To objIDE.vbprojects.Count - 1
HGCWZMC = objIDE.vbprojects(I + 1).Filename '这是获得宏工程文件的完整名称如“D:\00邓细木CAD插件汇总\CAD2005中C盘的Support菜单文件以日期为名保存于此\2012-03-18-17-12(菜单文件第一次改在默认的同菜单文件的同一文件夹SUPPORT下)\邓细木的宏DXM.dvb”
If HGCWZMC = 列表框选中文档名 Then
Set 获得列表框指定的宏工程对象 = objIDE.vbprojects(I + 1)
Exit Function
End If
Rem Debug.Print objIDE.vbprojects(i + 1).Name'这是获得ACADPROJECT的名称,属内置名
Next
End Function
Private Sub CommandButton640_Click()
On Error Resume Next
Dim DVBDX As Object '即为DVB宏工程对象
Set DVBDX = 获得列表框指定的宏工程对象()
DVBDX.Save
End Sub
vb中有这个方法,vba中没有这个方法的 wxd20130610 发表于 2014-5-11 17:59 static/image/common/back.gif
vb中有这个方法,vba中没有这个方法的
老师,你告诉我是不可能做到,还是可能做到,只是我的代码不对。?如果是不可能做到保存功能,则我就不再操心了。 Set ThisDrawing.Application.VBE.activevbproject = ThisDrawing.Application.VBE.vbprojects(PrjName)
ThisDrawing.Application.VBE.CommandBars("菜单条").Controls(1).Controls(3).Execute 我试了,保存不了。“PrjName”到底指什么?是“D:\00邓细木CAD插件汇总\CAD每天都在使用的C盘深处的2005SUPPORT文件夹\CJ001986序号编号相关插件汇总命令HAZAOTIHUAN201310191657354\CJ001288批量改编号.dvb”还是“CJ001288批量改编号.dvb”,还是指其它? PrjName是你要保存的dvb工程文件全称 不应该,我试过在一个dvb中控制保存另一个dvb,ThisDrawing.Application.VBE.CommandBars("菜单条").Controls(1).Controls(3).Execute这个命令就是点击菜单栏上的保存按钮,因此需要将要保存的dvb置前,但一个问题是这个命令是异步执行的,所以一般将这个命令放在程序的最后面执行。
页:
[1]