根据 Excel 中的数据列表批量创建多个文件夹和子文件夹
假设您的工作表中有一份员工姓名列表,并希望为每位员工单独创建文件夹来存储其相关信息。手动逐个创建不仅繁琐,还极其耗时。不过,其实有更高效的方法可以大幅加速这一流程。在本指南中,我将为您分享几种快速根据指定单元格内容批量生成文件夹的实用方法。

使用 MD 命令和记事本从列表创建文件夹
利用 MD 命令与记事本将 Excel 列表转换为文件夹,是一种巧妙高效的方法——它将简洁的批处理脚本与 Excel 强大的数据组织能力完美结合,轻松实现批量文件夹创建,省去繁琐的手动操作。以下是完成此任务的分步指南:
步骤 1:使用 MD 命令创建公式
将以下公式复制或输入到首个单元格值(例如 B1)旁边的空白单元格中,然后向下拖动填充柄,即可将公式应用到所有列表项。
="MD "&A1

步骤 2:将公式复制并粘贴到记事本文件中
- 按“Ctrl + C”复制包含 MD 命令公式的单元格。
- 打开记事本,按“Ctrl + V”将命令粘贴到生成文件中。

步骤 3:将记事本文件另存为 .bat 文件
在记事本中,单击“文件”选项卡下的“另存为”。在弹出的“另存为”对话框中,选择您希望创建多个文件夹的目标目录,为该文件指定一个名称,并添加 .bat 扩展名,然后单击“保存”按钮。请参见截图:
步骤 4:双击 .bat 文件以生成多个文件夹
- 关闭记事本文件,导航至您之前保存 .bat 文件的文件夹。
- 现在,见证奇迹时刻:双击该文件,多个文件夹将同时创建。请参见下方演示:

使用强大工具——Kutools for Excel 从列表创建文件夹
借助强大的 Kutools for Excel「基于区域创建文件夹」功能,您可轻松快速地从 Excel 列表生成文件夹。不仅如此,Kutools 还支持一键创建包含多级子文件夹的复杂结构。只需几个简单步骤,即可将 Excel 数据转化为井然有序的文件夹系统,显著提升工作效率。
安装 Kutools for Excel 后,请单击“KUTOOLS PLUS”>“导入导出”>“基于区域创建文件夹”以打开基于区域创建文件夹对话框:
- 选择您要基于其创建文件夹的单元格值;
- 然后,单击
按钮,指定要保存这些文件夹的目标文件夹; - 最后,单击“确定”按钮。

结果:
Kutools 将为您处理工作表中的列表,并在指定的目标位置为每个条目创建一个文件夹。请前往目标文件夹查看结果。参见截图:
- 此实用功能还可根据需要同时创建文件夹及其子文件夹。要实现此操作,请在单元格中输入所需的文件夹和子文件夹名称,并用反斜杠(\)分隔每一级。每个单元格的内容将作为创建所需文件夹及子文件夹结构的指南。

随后,应用“基于区域创建文件夹”功能,即可成功生成所有文件夹及其子文件夹。参见截图:
- 要使用此功能,请 下载并安装 Kutools for Excel。
使用 VBA 代码从列表创建文件夹
在 Excel 中,借助 VBA 代码,您可以将根据列表创建文件夹这一繁琐任务转变为快速、自动化的高效流程。本节将为您演示如何运用 VBA 代码轻松生成文件夹。
步骤 1:打开 VBA 模块编辑器并复制代码
- 在 Excel 中按住 Alt + F11 键,即可打开“Microsoft Visual Basic for Applications”窗口。
- 单击“插入”>“模块”,并将以下代码粘贴到模块窗口中。
VBA 代码:根据单元格值列表创建文件夹Sub CreateFoldersFromSelection() 'Updateby Extendoffice Dim FolderPath As String Dim Cell As Range Dim SelectedRange As Range Dim FolderName As String On Error Resume Next Set SelectedRange = Application.InputBox("Select the range with folder names", "Kutools for Excel", Type:=8) If SelectedRange Is Nothing Then Exit Sub On Error GoTo 0 With Application.FileDialog(msoFileDialogFolderPicker) .Title = "Select the destination Folder" .AllowMultiSelect = False If .Show <> -1 Then Exit Sub FolderPath = .SelectedItems(1) & "\" End With For Each Cell In SelectedRange FolderName = FolderPath & Cell.Value If Cell.Value <> "" And Not FolderExists(FolderName) Then MkDir FolderName End If Next Cell End Sub Function FolderExists(ByVal Path As String) As Boolean On Error Resume Next FolderExists = (GetAttr(Path) And vbDirectory) = vbDirectory On Error GoTo 0 End Function
步骤 2:执行代码
- 粘贴此代码后,请按 F5 键运行。在弹出的提示框中,选择您希望用于创建文件夹的单元格值,然后单击“确定”。

- 随后,在弹出的“选择目标文件夹”窗口中,指定用于输出所创建文件夹的目标路径,然后单击“确定”按钮。请参见截图:

结果:
执行 VBA 代码后,请前往目标目录查看结果——您将看到为 Excel 列表中每个项目新建的文件夹。请参见截图:
- 如果单元格中存在重复条目,代码将仅创建一个文件夹。
- 如果您经常使用此代码,建议将工作簿保存为“Excel 启用宏的工作簿”格式,以便将代码直接保留在工作簿中,日后无需重新输入或导入即可随时执行。
使用 VBA 代码根据单元格值创建文件夹和子文件夹
有时,您可能需要根据 Excel 单元格中的数据,不仅创建文件夹,还能同步生成对应的子文件夹。为此,我将为您介绍一段实用的 VBA 代码。
步骤 1:准备数据
首先,请按如下图所示输入数据:将主文件夹名称置于第一列,子文件夹名称置于第二列。
步骤 2:打开 VBA 模块编辑器并复制代码
- 在 Excel 中按住 Alt + F11 键,即可打开“Microsoft Visual Basic for Applications”窗口。
- 单击“插入”>“模块”,并将以下代码粘贴到模块窗口中。
VBA 代码:根据单元格值创建文件夹和子文件夹Sub CreateFoldersAndSubfoldersWithUserInput() 'Updateby Extendoffice Dim Rng As Range Dim Cell As Range Dim basePath As String Dim fldrPicker As FileDialog Dim FolderPath As String, subfolderPath As String On Error Resume Next Set Rng = Application.InputBox("Select the range of cells (two columns: one is folder column, another s subfolder column):", "Kutools for Excel", Type:=8) If Rng Is Nothing Then Exit Sub On Error GoTo 0 Set fldrPicker = Application.FileDialog(msoFileDialogFolderPicker) With fldrPicker .Title = "Select the Base Folder Path" .AllowMultiSelect = False If .Show <> -1 Then Exit Sub basePath = .SelectedItems(1) End With If Right(basePath, 1) <> "\" Then basePath = basePath & "\" For Each Cell In Rng.Columns(1).Cells If Not Cell.Value = "" Then FolderPath = basePath & Cell.Value If Not FolderExists(FolderPath) Then MkDir FolderPath If Not Cell.Offset(0, 1).Value = "" Then subfolderPath = FolderPath & "\" & Cell.Offset(0, 1).Value If Not FolderExists(subfolderPath) Then MkDir subfolderPath End If End If Next Cell End Sub Function FolderExists(FolderPath As String) As Boolean On Error Resume Next FolderExists = (GetAttr(FolderPath) And vbDirectory) = vbDirectory On Error GoTo 0 End Function
步骤 3:执行代码
- 粘贴此代码后,请按 F5 键运行。在弹出的提示框中,选择您希望用于创建文件夹的单元格值,然后单击“确定”。

- 在随后弹出的窗口中,指定用于输出所创建文件夹的目标路径,然后单击“确定”按钮。请参见截图:

结果:
执行 VBA 代码后,请前往目标目录查看结果。您将看到,系统已根据单元格中的值成功创建了相应的文件夹及其子文件夹,如下图所示:
- 此代码仅支持创建主文件夹及其一级子文件夹。
- 如果您经常使用此代码,建议将工作簿保存为“Excel 启用宏的工作簿”格式,以便将代码保留在工作簿中,日后无需重新输入或导入即可直接运行。
相关文章:
- 将文件夹及子文件夹中的所有文件名列出到工作表中
- 如需在工作表中快速生成目录内的文件名列表,可按以下方法将目录中的文件列表导入工作表。
- 在 Excel 中列出所有文件夹和子文件夹
- 您是否曾遇到这样的困扰:需要将指定目录下的所有文件夹及其子文件夹名称一次性列到 Excel 工作表中?遗憾的是,Excel 本身并未提供一种快速便捷的方法来直接获取特定目录下全部文件夹的名称。本文或许正是您解决这一难题的关键。
- 根据列表将文件从一个文件夹复制或移动到另一个文件夹
- 如果工作表某一列中包含文件名列表,且这些文件位于计算机的某个文件夹中,而现在您需要将工作表中列出的这些文件从原始文件夹移动或复制到另一个文件夹(如下图所示),那么在 Excel 中如何才能快速完成此任务?
- 批量重命名文件夹中的多个文件
- 我们大多数人可能都遇到过这样的困扰:需要批量重命名文件夹中的多个文件,而当文件数量多达成百上千时,逐个手动重命名简直令人抓狂。有没有高效的方法能帮我们轻松搞定这项任务?
最佳办公效率工具
| 🤖 | KUTOOLS AI 助手:基于以下内容革新数据分析:智能执行 | 生成代码| 创建自定义公式 | 数据分析及生成图表| 调用 Kutools Functions…… |
| 热门功能:查找、高亮或标记重复项 | 删除空白行 | 合并列或单元格而不丢失数据 | 不使用公式的四舍五入…… | |
| 高级 LOOKUP:多条件 VLookup | 多值 VLookup | 跨多工作表 VLookup | 模糊查找…… | |
| 高级下拉列表:快速创建下拉列表 | 级联下拉列表 | 多选下拉列表…… | |
| 列管理器:添加指定数量的列|移动列|切换隐藏列的可见性状态|比较区域与列…… | |
| 精选功能:网格聚焦 | 设计视图 |增强编辑栏 | 工作簿和工作表管理器 | 资源库(自动文本)| 日期提取 | 汇总工作表 | 加密/解密单元格 | 按列表发送邮件 | 超级筛选 | 特殊筛选(筛选粗体单元格/斜体/删除线……) ...... | |
| 热门 15 工具集:12 文本工具(添加文本,删除特定字符,……)| 50+ 图表 类型(甘特图,……)| 40+ 实用公式(基于生日计算年龄,……)| 19 插入工具(插入二维码,从路径插入图片,……)| 12 转换工具(小写金额转大写,汇率转换,……)| 7 合并和拆分工具(高级合并行,分割单元格,……)|……更多 |
使用 Kutools for Excel 超级提升您的 Excel 技能,体验前所未有的高效办公!Kutools for Excel 提供超过 300 项高级功能,助您大幅提升工作效率、节省宝贵时间。立即点击获取您最需要的功能……
Office Tab 为 Office 带来标签式界面,让您的工作更加轻松
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑与阅读功能,大幅提升多文档操作效率!
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中打开。
- 工作效率提升 50%,每天为您省下数百次鼠标点击!
所有 Kutools 插件,一个安装程序
Kutools for Office 套件捆绑了适用于 Excel、Word、Outlook 和 PowerPoint 的插件,以及 Office Tab Pro,是跨 Office 应用高效协作团队的理想之选。
- 一体化套件— Excel、Word、Outlook 和 PowerPoint 插件 + Office Tab Pro
- 一个安装程序,一个许可证— 几分钟内即可完成设置(支持 MSI)
- 协同效果更佳— 在 Office 应用间实现高效协同办公
- 30 天全功能试用— 无需注册,无需信用卡
- 超值之选— 比单独购买插件更省钱


按钮,指定要保存这些文件夹的目标文件夹;




