乐筑天下

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

[编程交流] 保存图形和子曲面

[复制链接]

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 17:19:07 | 显示全部楼层 |阅读模式
我们的情况是,在我们的网络上运行大型作业变得非常缓慢。(请所有IT人员,我们无法更改网络1500个用户)
 
为了解决这个问题,我们将作业复制到本地驱动器。该作业创建了一个信息数据库以及DWG。
 
我们想要的是另存为选项
1将图纸复制回服务器(可以使用新菜单命令)
 
2也将子目录复制到网络(新菜单命令的一部分)
 
第一个可以通过Autocad完成,但第二个我们必须使用explorer等,并依靠操作员记住要做的事情。
 
我曾通过对操作系统的外壳处理来使用外部命令,并在Acad中有所暗示。pgp文件,但无法使用复制命令和脚本使其完全工作。
 
如果有任何建议,VBA可能是更好的选择。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 17:32:10 | 显示全部楼层
根据我之前的请求,我尝试编辑菜单文件,将^c^c\u saveas更改为^c^c\u saveas explorer
 
ie运行save autocad,然后弹出浏览器窗口,saveas工作,但没有浏览器任何想法,可能只是缺少斜杠或分号等
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 17:36:00 | 显示全部楼层
另一种想法是,有人可以提供代码,将文件d:\myjobs\test从Autocad中复制到P:\jobno\design。Lisp或vba ok
 
文件名将更改,但可以从打开的Autocad图形中读取。
回复

使用道具 举报

9

主题

49

帖子

41

银币

初来乍到

Rank: 1

铜币
45
发表于 2022-7-6 17:43:49 | 显示全部楼层
http://www.exceltip.com/st/Basic_file_and_folder_examples_using_VBA_in_Microsoft_Excel/443.html
文件副本“d:\myjobs\test”,“P:\jobno\design”
 
普尔泽莫
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 17:49:31 | 显示全部楼层
谢谢,这正是我想要的。
 
额外的选项可以很好地检查现有的etc
 
它还显示了我先做一件简单的事情,检查VBA帮助输入“文件复制”来定位该命令。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 17:53:05 | 显示全部楼层
感谢您提供的信息,但现在我有另一个问题,我需要使用通配符即使用*.*一次性复制多文件选项不起作用。
 
Filecopy似乎一次只能处理一个文件。我现在发现,该软件会根据作业类型创建额外的文件,所以你真的不知道要复制多少文件。
这是一段代码,它可以工作,但不适用于**
 
civ3dfile=“***”
SourceFile=newdatadrive+“\ Civil 3D Projects\”+JOBNO+“\”+JOBNO+“-data\Advroads\”+civ3dfile
 
 
DestinationFile=“P:\”+JOBNO+“\ design\”+JOBNO+“-data\Advroads\”+civ3dfile
 
文件复制源文件,目标文件
 
任何帮助都将不胜感激
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 18:01:34 | 显示全部楼层
任何一个看到这个的人都会找到答案,你需要一个循环来查看目录,并使用Dir(文件名)拉出每个文件名,然后复制它。
回复

使用道具 举报

0

主题

2

帖子

2

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 18:07:38 | 显示全部楼层
你能发布你的代码示例吗?我一直在尝试同样的事情。
谢谢
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 18:18:07 | 显示全部楼层
希望这有帮助
 
您只需要一个表单来输入“jobno”和目录字母(newdatadrive)
 
  1. Private Sub commandbutton1_Click()
  2. Dim newdatadrive As String
  3. Dim jobno As String
  4. Dim MyPath, MyName, checkfile
  5. Dim SourceFile, DestinationFile As String
  6. Dim civ3dfile As String
  7. jobno = projectno.Value
  8. newdatadrive = datadrive.Value + ":"
  9. coggfilecopy1.Hide
  10. 'check to see if current drawing
  11. currentdwgname = ThisDrawing.GetVariable("Dwgname") 'noofchar = Len(currentdwgname)
  12. currentdwgname = Mid$(currentdwgname, 1, 7) 'only need 1st 7 characters
  13. 'MsgBox "dwg name" & currentdwgname
  14. If currentdwgname = jobno Then
  15. MsgBox "You can not save the drawing if you have it open" & (Chr(13)) & "Please close and try again"
  16. GoTo COGGEND
  17. End If
  18. checkfile = "P:" + jobno + "\Design" + jobno + "-data"
  19. 'How to determine if a file exists in a folder:
  20. If Dir(checkfile, vbDirectory) = "" Then
  21. 'makenewdir
  22. MsgBox "Directory does not exist now making"
  23. MkDir "P:" + jobno + "\Design" + jobno + "-data"
  24. MkDir "P:" + jobno + "\Design" + jobno + "-data\Advroads"
  25. Else
  26. MsgBox "Directory found now continue" & checkfile
  27. End If
  28. ' Define source file name D:\Civil 3D Projects\jobno\jobno.dwg.
  29. SourceFile = newdatadrive + "\Civil 3D Projects" + jobno + "" + jobno + ".dwg"
  30. ' Define target file name.
  31. DestinationFile = "P:" + jobno + "\design" + jobno + ".dwg"
  32. 'copy file
  33. MsgBox "file copied " & DestinationFile
  34. FileCopy SourceFile, DestinationFile
  35. ' Display the names in C:\ that represent directories.
  36. MyPath = newdatadrive + "\Civil 3D Projects" + jobno + "" + jobno + "-data\Advroads"    ' Set the path.
  37. 'myname = Dir(Mypath, vbDirectory) '1st entry
  38. MyName = Dir(MyPath)               '2nd entry 1st is .. not needed
  39. Do While MyName <> ""    ' Start the loop.
  40. SourceFile = newdatadrive + "\Civil 3D Projects" + jobno + "" + jobno + "-data\Advroads" + MyName   ' Define source file name D:\Civil 3D Projects\2006100\2006100.dwg.
  41. DestinationFile = "P:" + jobno + "\design" + jobno + "-data\Advroads" + MyName    ' Define source file name D:\Civil 3D Projects\2006100\2006100.dwg.
  42. FileCopy SourceFile, DestinationFile
  43. MsgBox "file copied " & MyName
  44. MyName = Dir    ' Get next entry.
  45. Loop  'end of loop
  46. GoTo COGGEND
  47. notright:
  48. MsgBox "enter a job no or data drive"
  49. frmcoggfilecopy1.Show
  50. COGGEND:
  51. End Sub
回复

使用道具 举报

0

主题

2

帖子

2

银币

初来乍到

Rank: 1

铜币
0
发表于 2022-7-6 18:20:30 | 显示全部楼层
谢谢你的帮助。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-4 16:28 , Processed in 0.663383 second(s), 72 queries .

© 2020-2025 乐筑天下

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