Vba 名称strOld为strNew不工作

Vba 名称strOld为strNew不工作,vba,zip,ms-word,Vba,Zip,Ms Word,我有一个宏,它使用Name命令在末尾重命名文件,将.zip扩展名改回.docx扩展名: Name strOldZip as strNewDocX 如果我在调试模式下运行它,它就会工作。但是,每当我以全速运行宏时,它都不会正常工作。.docx文件已创建,但.zip文件图标仍保留在桌面上。单词图标和文件名不会出现。因此,我的桌面上有一个空的.zip文件图标,还有一个.docx文件,我已经确认它没有隐藏,但除非我搜索它,否则不会出现。(一旦我在搜索中找到它,我就可以将它拖到一个新文件夹中,然后再拖回

我有一个宏,它使用
Name
命令在末尾重命名文件,将.zip扩展名改回.docx扩展名:

Name strOldZip as strNewDocX
如果我在调试模式下运行它,它就会工作。但是,每当我以全速运行宏时,它都不会正常工作。.docx文件已创建,但.zip文件图标仍保留在桌面上。单词图标和文件名不会出现。因此,我的桌面上有一个空的.zip文件图标,还有一个.docx文件,我已经确认它没有隐藏,但除非我搜索它,否则不会出现。(一旦我在搜索中找到它,我就可以将它拖到一个新文件夹中,然后再拖回来让它显示出来。)


我尝试在name命令后让宏休眠一段时间,但也不起作用。我认为问题可能出现在Windows需要更改桌面图标和显示新名称的时候,这就是它在调试模式下工作的原因。我说得对吗?如果是这样的话,我该如何应对呢

以上@GSerg评论的回复:


“试着让它在睡觉之前睡觉,而不是之后。”


工作得很有魅力。谢谢,格斯伯格

试着让它在睡觉之前睡觉,而不是之后。也可能有助于显示
名称
@GSerg之前的一些代码,我可以发誓我已经尝试过了,但它像一个符咒一样工作!谢谢@格斯伯格,我想你应该把你的评论作为一个答案发表出来。你在桌面上按了F5以便刷新了吗?@0xA3,我的问题没有说明这一点,但代码中的下一步是打开文件。如果桌面在到达该行时未更新(我不希望最终用户必须手动执行),则宏最终会失败,Windows会将文件视为已损坏。不过,谢谢你的建议。我甚至没有意识到F5更新了桌面。