如何基于Excel中的列表将文件从一个文件夹复制或移动到另一个文件夹?

网友投稿 353 2023-12-19

如何基于Excel中的列表将文件从一个文件夹复制或移动到另一个文件夹? 

如果您在工作表的一列中有文件名列表,并且这些文件位于您的Computor的文件夹中。 但是,现在,您需要将这些名称已在工作表中列出的文件从其原始文件夹移动或复制到另一个文件,如下图所示。 您如何在Excel中尽快完成此任务?

使用VBA代码基于Excel中的列表将文件从一个文件夹复制或移动到另一个文件夹

使用VBA代码基于Excel中的列表将文件从一个文件夹复制或移动到另一个文件夹

若要基于文件名列表将文件从一个文件夹移动到另一个文件夹,请按照以下VBA代码进行操作:

1。 按住 Alt + F11键 键,然后打开 Microsoft Visual Basic应用程序 窗口。

2。 点击 插页 > 模块,然后将以下VBA代码粘贴到“模块窗口”中。

VBA代码:根据Excel中的列表将文件从一个文件夹移动到另一个文件夹

Sub movefiles() Updateby Extendoffice Dim xRg As Range, xCell As Range Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog Dim xSPathStr As Variant, xDPathStr As Variant Dim xVal As String On Error Resume Next Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8) If xRg Is Nothing Then Exit Sub Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker) xSFileDlg.Title = " Please select the original folder:" If xSFileDlg.Show <> -1 Then Exit Sub xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\" Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker) xDFileDlg.Title = " Please select the destination folder:" If xDFileDlg.Show <> -1 Then Exit Sub xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\" For Each xCell In xRg xVal = xCell.Value If TypeName(xVal) = "String" And xVal <> "" Then FileCopy xSPathStr & xVal, xDPathStr & xVal Kill xSPathStr & xVal End If Next End Sub
Copy

3。 然后按 F5 键运行此代码,然后会弹出一个提示框,提醒您选择包含文件名的单元格,请参见屏幕截图:

4。 然后点击 OK 按钮,然后在弹出的窗口中,选择包含您要移动的文件的文件夹,请参见屏幕截图:

5。 然后点击 OK,在另一个弹出的窗口中继续选择要在其中找到文件的目标文件夹,请参见屏幕截图:

6。 最后点击 OK 关闭窗口,现在,文件已根据工作表列表中的文件名移动到您指定的另一个文件夹中,请参见屏幕截图:

备注:如果您只想将文件复制到另一个文件夹,但保留原始文件,请使用以下VBA代码:

VBA代码:根据Excel中的列表将文件从一个文件夹复制到另一个文件夹

Sub copyfiles() Updateby Extendoffice Dim xRg As Range, xCell As Range Dim xSFileDlg As FileDialog, xDFileDlg As FileDialog Dim xSPathStr As Variant, xDPathStr As Variant Dim xVal As String On Error Resume Next Set xRg = Application.InputBox("Please select the file names:", "KuTools For Excel", ActiveWindow.RangeSelection.Address, , , , , 8) If xRg Is Nothing Then Exit Sub Set xSFileDlg = Application.FileDialog(msoFileDialogFolderPicker) xSFileDlg.Title = "Please select the original folder:" If xSFileDlg.Show <> -1 Then Exit Sub xSPathStr = xSFileDlg.SelectedItems.Item(1) & "\" Set xDFileDlg = Application.FileDialog(msoFileDialogFolderPicker) xDFileDlg.Title = "Please select the destination folder:" If xDFileDlg.Show <> -1 Then Exit Sub xDPathStr = xDFileDlg.SelectedItems.Item(1) & "\" For Each xCell In xRg xVal = xCell.Value If TypeName(xVal) = "String" And xVal <> "" Then FileCopy xSPathStr & xVal, xDPathStr & xVal End If Next End Sub
Copy

最佳办公生产力工具

将小时转化为分钟 Kutools for Excel!

如何基于Excel中的列表将文件从一个文件夹复制或移动到另一个文件夹?

准备好增强您的 Excel 任务了吗? 利用的力量 Kutools for Excel - 您终极的节省时间的工具。 简化复杂的任务并像专业人士一样浏览数据。 以闪电般的速度体验 Excel!

为什么需要 Kutools for Excel

🛠️  超过 300 项强大功能: Kutools 包含 300 多项高级功能,可简化您在 1500 多种场景中的工作。

📈  卓越的数据处理能力:合并单元格、删除重复项并执行高级数据转换 - 所有这些都不费吹灰之力!

⏱️  高效的批量操作:当你可以聪明地工作时,为什么还要付出额外的努力呢? 轻松批量导入、导出、组合和调整数据。

📊  可定制的图表和报告:访问各种附加图表并生成富有洞察力的报告。

🗄️  强大的导航窗格:通过强大的列管理器、工作表管理器和自定义收藏夹获得优势。

📝  七种类型的下拉列表:通过各种功能和类型的下拉列表使数据输入变得轻而易举。

🎓  用户友好:对于初学者来说轻而易举,对于专家来说是一个强大的工具。

立即下载,与 Excel 一起穿越时空!

阅读更多 免费下载... 采购... 
Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松
在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。 每天将您的工作效率提高50%,并减少数百次鼠标单击!
阅读更多 免费下载... 采购... 

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何只复制Excel中的可见单元格?
下一篇:如何根据Google工作表中的单元格值将行复制到另一工作表?
相关文章