提示:其它语言是由 Google 机器翻译的。 你可以访问 English 版本。
登录
x
or
x
x
马上登记
x

or

如何在Excel中将特定文件从一个文件夹移动到另一个文件夹?

假设,我有一个大文件夹,其中包含各种文件,如docx,jpg,xlsx等,如下图所示。 现在,我想将文件夹中的某些特定文件类型移动到另一个新文件夹,而无需手动逐个移动。 你有什么好的想法在Excel中解决这个任务吗?

使用VBA代码将特定文件从一个文件夹移动到另一个文件夹


使用VBA代码将特定文件从一个文件夹移动到另一个文件夹


要尽快将所有特定类型的文件从一个文件夹移动到另一个文件夹,以下VBA代码可能会对您有所帮助,请按照以下步骤操作:

1。 按住 ALT + F11 键打开 Microsoft Visual Basic for Applications 窗口。

2。 点击 插页 > 模块,并将以下代码粘贴到 模块 窗口。

VBA代码:将特定类型的文件从一个文件夹移动到另一个文件夹:

Sub MoveFiles()
'Updateby Extendoffice
    Dim xFd As FileDialog
    Dim xTFile As String
    Dim xExtArr As Variant
    Dim xExt As Variant
    Dim xSPath As String
    Dim xDPath As String
    Dim xSFile As String
    Dim xCount As Long
    Set xFd = Application.FileDialog(msoFileDialogFolderPicker)
    xFd.Title = "Please select the original folder:"
    If xFd.Show = -1 Then
        xSPath = xFd.SelectedItems(1)
    Else
        Exit Sub
    End If
    If Right(xSPath, 1) <> "\" Then xSPath = xSPath + "\"
    xFd.Title = "Please select the destination folder:"
    If xFd.Show = -1 Then
        xDPath = xFd.SelectedItems(1)
    Else
        Exit Sub
    End If
    If Right(xDPath, 1) <> "\" Then xDPath = xDPath + "\"
    xExtArr = Array("*.xlsx*", "*.jpg")
    For Each xExt In xExtArr
        xTFile = Dir(xSPath & xExt)
        Do While xTFile <> ""
            xSFile = xSPath & xTFile
            FileCopy xSFile, xDPath & xTFile
            Kill xSFile
            xTFile = Dir
            xCount = xCount + 1
        Loop
    Next
    MsgBox "Total number of moved files is: " & xCount, vbInformation, "Kutools for Excel"
End Sub

注意:在上面的代码中,“* .XLSX *“”* .JPG“在脚本中: xExtArr = Array(“*。xlsx *”,“* .jpg”) 是您想要移动的文件类型,您可以根据需要将它们更改为其他文件类型或添加其他文件类型。

3。 然后按 F5 键以运行此代码,并弹出一个窗口提醒您选择要从中移动文件的原始文件夹,请参阅屏幕截图:

4。 然后点击 OK,并且弹出另一个窗口,请选择要将文件移动到的目标文件夹,请参阅截图:

5。 然后点击 OK,会弹出一个提示框来提醒你已经移动了多少个文件,关闭它,并且你可以看到特定的jpg文件,xlsx文件已经被移动到指定的文件夹中,参见截图:


Kutools for Excel - 最佳办公生产力工具提高80%的生产力

  • 重用: 快速插入 复杂的公式,图表 以及你以前用过的任何东西; 加密单元格 密码; 创建邮件列表 并发送电子邮件...
  • 超级方程式酒吧 (轻松编辑多行文字和公式); 阅读布局 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 不丢失数据; 分裂细胞含量; 组合重复的行/列...防止重复的细胞; 比较范围...
  • 选择复制或唯一 行; 选择空行 (所有细胞都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择......
  • 精确复制 多个单元格而不更改公式参考; 自动创建参考 多张表; 插入项目符号,复选框等等......
  • 提取文本,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级过滤器 (将过滤方案保存并应用到其他工作表); 高级排序 按月/周/日,频率等; 特殊过滤器 用粗体,斜体......
  • 结合工作簿和工作表; 根据键列合并表; 将数据拆分为多个表格; 批量转换xls,xlsx和PDF...
  • 超过300强大的功能。 支持Office / Excel 2007-2019和365。 支持所有语言。 在您的企业或组织中轻松部署。 全功能60天免费试用。
kte tab 201905

Office选项卡为Office提供选项卡式界面,使您的工作更轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,Publisher,Access,Visio和Project。
  • 在同一窗口的新选项卡中打开并创建多个文档,而不是在新窗口中。
  • 通过50%提高您的工作效率,每天为您减少数百次鼠标点击!
官方底部
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Luke · 2 months ago
    Hi,
    Code works great for what I am doing. Thank you! How do you have it check if files exist in the destination folder and prompt the user to ask if they want to overwrite the files or save as another file name? I am working with .pdf files saving to the destination folder.
  • To post as a guest, your comment is unpublished.
    Lokesh · 1 years ago
    To move or copy files from a folder to another based on excel list, and destination (path)
    on excel list. plz help...
  • To post as a guest, your comment is unpublished.
    lokesh · 1 years ago
    Hello
    To move or copy files from a folder to another based on excel list, the following article may help you!
  • To post as a guest, your comment is unpublished.
    Kumar · 1 years ago
    Hi,
    I need a help. Can we select few files and move them in to a separate folder by list in excel file?
    thanks in advance
  • To post as a guest, your comment is unpublished.
    rocky · 2 years ago
    Hi

    Thanks for helpful tip. I have around 5000 files listed on one excel file. I need to search all these files from the entire computer , if file names are matched then copy and paste in another folder