根據 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 中盡快完成此任務呢?
- 重命名文件夾中的多個文件
- 也許我們大多數人都遇到過這樣的問題,即需要重命名文件夾中的多個文件,如果逐一手動重命名文件名,當文件夾中有數百或數千個文件時,這會讓人抓狂。是否有什麼好的方法可以幫助我們處理這個任務?
最佳辦公效率工具
🤖 | Kutools AI 助手:基於智能執行方式革新數據分析:智能執行 | 生成代碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 函數… |
熱門功能:查找、標記重複值或識別重複項 | 刪除空行 | 合併列或單元格而不丟失數據 | 四捨五入無需公式 ... | |
高級 LOOKUP: 多條件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 .... | |
高級下拉列表:快速創建下拉列表 | 依賴下拉列表 | 多選下拉列表 .... | |
列管理器: 添加特定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 比較區域和列 ... | |
特色功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿與工作表管理器 | 資源庫(自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/斜體/刪除線...) ... | |
頂級 15 種工具集: 12 個文本工具(添加文本、刪除特定字符、...) | 50+ 圖表 類型(甘特圖、...) | 40+ 實用 公式(基於生日計算年齡、...) | 19 個插入工具(插入QR碼、根據路徑插入圖片、...) | 12 個轉換工具(金額轉大寫、匯率轉換、...) | 7 個合併與分割工具(高級合併行、分割儲存格、...) | ... 還有更多 |
使用 Kutools for Excel 提升您的 Excel 技巧,體驗前所未有的高效。 Kutools for Excel 提供超過 300 種高級功能來提高生產力並節省時間。 點擊這裡獲取您最需要的功能...
Office Tab 將標籤式界面帶到 Office,讓您的工作更加輕鬆
- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
- 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
- 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!