Keith™ 发表于 2005-2-28 09:07:31

自动化错误:无法保存文件

好的..我必须承认,这个问题难住了我...我将给出这个场景,您可以在您的安装上测试它,看看结果是否相同...
场景:
VBA自动打开DXF文件并将版本备份到R12
用户通过公共对话框选择文件(在本论坛的其他地方可以找到)
VBA指示AutoCAD打开DXF文件并使其成为活动图形
VBA试图另存为以前的版本,但出现了错误...

Sub DXF2R12()
Set DXFDoc = Application.Documents.Open ("C:\MYFILE.DXF")
DXFDoc.Saveas "C:\MYFILE.DXF", acR12_dxf
End Sub

反正保存“dwg到dwg”、“dwg到dxf”或“dxf到dwg”没有问题只有“dxf到dxf”失败...
同时,我已经通过使用此变通方法解决了这个问题...

Sub DXF2R12()
Set DXFDoc = Application.Documents.Open ("C:\MYFILE.DXF")
DXFDoc.Saveas Environ("TEMP") & "\MYFILE.DWG, acR15_dwg
DXFDoc.Saveas "C:\MYFILE.DXF, acR12_dxf
Kill Environ("TEMP") & "\MYFILE.DWG"
End Sub

**** Hidden Message *****

hendie 发表于 2005-2-28 10:16:50

我得到了同样的错误Keith。
另一种解决方法是在打开DXF之前在DXF上使用filecopy,但您仍然必须在例程结束后杀死文件

Keith™ 发表于 2005-2-28 10:46:41


您可以将dwg保存到dxf,然后重新打开dwg并无意外地保存回相同的dxf,因此这似乎表明文件锁定问题...几乎就像AutoCAD在打开DXF时将文件锁定在DXF上,该DXF在将文件保存到DXF之前未删除...
我想我会尝试在DXF上使用保存选项,但我似乎记得这样做时,AutoCAD默认为当前DWG版本的保存版本。
页: [1]
查看完整版本: 自动化错误:无法保存文件