乐筑天下

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

代码A修改

[复制链接]

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 2013-7-8 10:57:53 | 显示全部楼层 |阅读模式
感谢Keith,我喜欢下面的代码
有什么方法可以给任何人重新命名吗。准备就绪的pdf文件。pdfold而不删除它们
感谢您的帮助
公共子Gartner\u Get\u Hyperlink\u Main() Dim objBlock As AcadBlockReference作为对象块参考 模糊对象作为身份 暗colHyps作为AcadHyperlinks 将fso设置为文件系统对象&nbsp
&nbsp
设置fso=New FileSystemObject&nbsp
 If Len(Dir(ThisDrawing.Path.\Cut Sheets\*.pdf))&lt&燃气轮机;0然后'检查当前项目剪切表中是否有任何PDF&nbsp&nbsp fso。删除此绘图文件。路径(&P)&引用;\剪切纸张\*。pdf“;,正确'如果有,请将其删除 如果结束&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
&nbsp
 对于本图纸中的每个对象。模型空间&nbsp&nbsp 如果对象的类型是AcadBlockReference,则&nbsp&nbsp&nbsp&nbsp 设置objBlock=objEnt&nbsp&nbsp&nbsp&nbsp 设置colHyps=objBlock。超链接&nbsp&nbsp&nbsp&nbsp 出错时继续下一步'如果我们遇到任何不'T有超链接&nbsp&nbsp&nbsp&nbsp fso。CopyFile colHyps。项(0)。URL,ThisDrawing。路径(&P)&引用;\剪切图纸\“;,正确'TRUE选项将自动覆盖具有相同名称的任何现有文件&nbsp&nbsp 如果结束 下一个目标 设置fso=Nothing
回复

使用道具 举报

86

主题

744

帖子

6

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1092
发表于 2013-7-8 14:10:38 | 显示全部楼层
这是重命名单个文件的更简单方法
  1. Name "c:\temp\123.pdf" As "c:\temp\123.pdfold"

回复

使用道具 举报

55

主题

190

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
410
发表于 2013-7-9 12:05:33 | 显示全部楼层
马特
如果Len(Dir(ThisDrawing.Path&Cut Sheets\*.pdf)),这不起作用&lt&燃气轮机;0然后'检查当前项目剪切表中是否有任何PDF&nbsp&nbsp FSO。命名此图形。路径(&P)&引用;\剪切纸张\*。pdf“;,“作为”;\切割旧纸张。pdf“;,正确'如果有,请重命名它们 结束如果我接近了吗
标记
回复

使用道具 举报

154

主题

1274

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1936
发表于 2013-7-9 16:13:14 | 显示全部楼层
如果您只是想将任何现有的.PDF文档重命名为.PDFOLD,这是可能的,但是,我必须提醒您,如果第二次执行该函数时目标名称是现有文件的名称,则会出现问题
例如:
此文件。pdf已重命名为此文件。pdfold之后,创建了一个新的pdf文件,称为thisfile。pdf如果再次调用该函数,它将尝试重命名此文件。pdf文件。pdfold,但是这个文件。pdfold将已经存在,这意味着应用程序将崩溃并烧坏
你可能会发现更好的解决方案是使用一个全局递增且永远不会重复的值。datetime值在这种情况下非常有效。因此,您可以重命名此文件。pdf到thisfile_201309070337.pdfold。这样,下次执行应用程序时,文件名会随着上次运行到现在之间的时间增加
因此,您可能要做的是:
'filter是一个字符串,用于匹配文件,即使用“*”。pdf“;匹配所有PDF文件或;a*。pdf“;匹配所有以“开始”的PDF文件;a“
/p> 您正在硬编码文件的位置,但将其输出到路径参数提供的文件夹中
您更改了日期时间格式字符串,并将其替换为*。pdfold..这不是日期格式字符串。这就是代码将失败的地方,因为它将返回一个既不是.pdfold也不是datetime字符串的字符串
所以…
要使用它,请将它完全按照我提供的那样放在vba代码中,并从应用程序中这样调用它:
重命名文件。pdf“;,此图纸。路径(&P)&引用;\剪切图纸\“&QUOTE;。pdfold“
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-6-29 13:15 , Processed in 2.379657 second(s), 61 queries .

© 2020-2025 乐筑天下

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