excel - 使用 VBA 搜索文件并将其移动到另一个文件夹
问题描述
也许有人可以帮助我。
我正在寻找一个在文件夹中搜索文件名关键字的 vba 代码,然后将这些找到的文件移动到 anthor 文件夹。
关键字存储在excel的A列中。
我使用了以下代码,它部分工作。问题是列 A 必须包含以下代码中的确切文件名。我希望 vba 搜索关键字。另一件事是必须移动文件而不是复制文件。如果文件已被移动,则 B 列中存在检查。
Sub Test()
Dim R As Range, r1 As Range
Dim SourcePath As String, DestPath As String, FName As String
SourcePath = "C:\Downloads\"
DestPath = "C:\Downloads\New folder\"
Set r1 = Range("A1", Range("A" & Rows.Count).End(xlUp))
For Each R In r1
FName = Dir(SourcePath & R)
Do While FName <> ""
If Application.CountIf(r1, FName) Then
FileCopy SourcePath & FName, DestPath & FName
R.Offset(0, 1).Value = FName
Else
MsgBox "Bad file: " & FName & " ==>" & FName & "<== "
End If
FName = Dir()
Loop
Next
End Sub
解决方案
Dir
如果您的范围仅包含文件的关键字,则可以在函数中使用通配符。像这样:
FName = Dir(SourcePath & "*" & R.Value & "*")
然后它将处理使用此关键字的所有文件。
推荐阅读
- sql - 在表 oracle 中插入缺失的行
- aws-application-load-balancer - 我们可以通过 AWS 控制台设置 AWS ALB 优先级吗?
- android - Android 通过改造发出 POST 请求
- graphql - 空手道 - 基于产品应用程序架构的自动更新请求是可能的?
- go - 使用 Go 加密 AES 字符串并使用 Crypto-js 解密
- python - .html 文件中使用的 .py 网页抓取
- django - django方法不允许(get,post)405
- javascript - Node.JS MySQL 等待查询结果
- ruby-on-rails - Rails 中的“未找到。身份验证通路(Azure)”
- google-sheets - 尝试将带有日期的各个列连接到单独列上的单元格中