yj821005 发表于 2005-7-1 17:48:00

[求助]关于doucument关闭的问题

今天机会崩溃!问题是这样的,我每次打开CAD后自动运行如下的一个宏:<BR>Sub LoadFileYJ()<BR>                       strPath = Application.Path<BR>                       If Right(strPath, 1) &lt;&gt; "\" Then<BR>                                                       strPath = strPath &amp; "\"<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 &amp; "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 &amp; HJWCFFile.GetFullPathPart(strFileName, VBFPFileTitle) &amp; ".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]
查看完整版本: [求助]关于doucument关闭的问题