如何解决VBA宏在遍历和重命名文件夹中的文件时遇到问题?
以下代码遍历一个文件夹中的所有PDF文件,获取文件名的第一个单词,并检查excel电子表格中是否存在该单词;如果不存在,则重命名该文件并添加单词“已上传”。问题在于,一旦遍历文件夹中的所有文件,它们一次又一次地遍历它们。如何防止这种情况发生?
Sub checkmissing()
Dim MyFolder As String,MyFile As String,Dim ioid As String
With Application.FileDialog(msoFileDialogFolderPicker)
.AllowMultiSelect = False
.Show
MyFolder = .SelectedItems(1)
Err.clear
End With
MyFile = Dir(MyFolder & "\" & "*.pdf")
Do While MyFile <> ""
DoEvents
On Error GoTo 0
ioid = Split(MyFile," ")(0)
Range("G1").Activate
With ActiveSheet.Range("G1:G10000")
Set c = .Find(ioid,LookIn:=xlValues)
If c Is Nothing Then
Name MyFolder & "\" & MyFile As MyFolder & "\" & "Uploaded " & MyFile
End If
End With
ChDir MyFolder
0
MyFile = Dir
Loop
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。