[求助]关于doucument关闭的问题
今天机会崩溃!问题是这样的,我每次打开CAD后自动运行如下的一个宏:<BR>Sub LoadFileYJ()<BR> strPath = Application.Path<BR> If Right(strPath, 1) <> "\" Then<BR> strPath = strPath & "\"<BR> End If<BR> 'MsgBox strPath<BR> Dim a As New CommonDialog<BR> a.Filter = "(*.dwg)|*.dwg"<BR> a.CancelError = True<BR> a.ShowOpen<BR> Dim strFileName As String<BR> Dim strDBDirName As String<BR> Dim strDBFileName As String<BR> Dim strSourseFileName As String<BR> strSourseFileName = strPath & "MZY2002\gangjin.mdb"<BR> strFileName = a.FileName<BR> 'MsgBox strFileName<BR> ThisDrawing.Application.Documents.Open strFileName<BR> strDBDirName = HJWCFFile.GetFullPathPart(strFileName, VBFPFileDir)<BR> strDBFileName = strDBDirName & HJWCFFile.GetFullPathPart(strFileName, VBFPFileTitle) & ".mdb"<BR> 'MsgBox strDBFileName<BR> If Dir(strDBFileName, vbDirectory) = "" Then<BR> If MsgBox("文件不存在,是创建文件,否重新指定文件", vbYesNo) = vbYes Then<BR> FileCopy strSourseFileName, strDBFileName<BR> strDBPath = strDBFileName<BR> Else<BR> Dim b As New CommonDialog<BR> b.Filter = "(*.mdb)|*.mdb"<BR> b.ShowOpen<BR> strDBPath = b.FileName<BR> End If<BR> Else<BR> strDBPath = strDBFileName<BR> End If<BR> <BR>End Sub这样,每次打开CAD后会自动弹出对话框,让用户选择一个已经存在的.dwg文件,同时检测是否有同名的.mdb文件,如果没有就提示用户是创建一个同名的.mdb文件还重新选择一个.mdb文件,目的是保证有一个.mdb文件,并将文件的完整路径记录下来。<BR>现在的问题是这样,每次都会有用户选择的一个.dwg文档和一个CAD每次自身的一个Drawing1.dwg文档存在CAD中,用户选择的一个.dwg文档为当前文档,如果用户什么都不作直接关掉CAD,竟然会出现“CAD无法关闭Drawing1.dwg,因为还有一个命令在运行。请完成该命令,然后重试。”这是为什么???再切换到Drawing1.dwg文档,发现并没有什么命令在运行,而且可以直接关掉!
下面我就想用程序将它关掉,我在ThisDrawing.Application.Documents.Open strFileName<BR>后面添加了<BR>Dim DOC As AcadDocument<BR> Set DOC = ThisDrawing.Application.Documents.Item("Drawing1.dwg")<BR>DOC.close<BR>发现每次运行到DOC.close<BR>这边就过不去,查阅帮助,发现帮助上也是这样用的,我在想是不是没有设置为当前文档,我又在 DOC.Close前面添加了一句:<BR>DOC.Activate,可是仍然不行。我觉得还是那个说有个命令在运行的原因,但是就是不知道怎么解决,快崩溃了!请各位帮忙谢谢!
页:
[1]