如何在 Excel 中獲取活動工作簿的位置/路徑?
本文將指導使用者學習如何使用三種可能的方法在 Excel 中獲取活動工作表的位置/路徑。本文包含三個示例。第一個示例基於使用者自定義公式。第二個示例基於 VBA 程式碼的使用,最後第三個示例使用了 Kutools 擴充套件。所有三個示例都使用相同的 Excel 工作表來顯示處理過程。提供的三個示例將精確地執行相同的任務,但使用不同的方法。本文的主要目的是瞭解執行相同任務的不同方法。
示例 1:使用使用者自定義公式獲取 Excel 中活動工作簿的位置
步驟 1
為了理解示例及其精確的工作原理,請考慮以下給定的工作表。

步驟 2
在此步驟中,使用者將能夠使用使用者定義的公式確定單元格的位置。鍵入以下給定的公式“=LEFT(CELL("filename",C2),FIND("[",CELL("filename",C2))-1)”。請參考程式碼截圖以瞭解資料處理過程。

公式說明
CELL("filename",C2) 返回當前工作簿的完整路徑,包括工作簿名稱和副檔名。
FIND("[",CELL("filename",C2)) 查詢檔案路徑中第一個左方括號 ("[") 的位置。這用於識別工作簿名稱的開頭並從結果中排除路徑。
LEFT(CELL("filename",C2),FIND("[",CELL("filename",C2))-1) 提取完整路徑中最左側的字元,直到左方括號的位置減去一個字元。這有效地刪除了工作簿名稱和副檔名,只留下路徑。
步驟 3
提供的快照包含當前工作簿的完整路徑。

步驟 4
要獲取所需的工作簿位置和工作簿名稱,請使用以下提供的公式:
=SUBSTITUTE( LEFT(CELL("filename",c2),FIND("]",CELL("filename",c2))-1),"[","")
請參考快照 -

公式說明
CELL 函式檢索有關包含公式的單元格的資訊。
"filename" 引數指定函式應返回當前工作簿的完整路徑和檔名。
c2 引數告訴函式檢索第 2 行和 C 列中單元格的資訊。
LEFT 函式從返回的檔名中檢索最左側的字元,直到特定數量的字元。
FIND 函式在提取的檔名中找到 "]" 字元第一次出現的位置。
" -1" 引數用於透過減去 1 來調整 FIND 函式返回的位置,以便 "]" 字元不包含在結果中。
SUBSTITUTE 函式將檔名中的 "[" 字元替換為空字串,有效地將其從結果中刪除。

示例 2:使用 VBA 程式碼獲取 Excel 中活動工作簿的位置
步驟 1
使用上面指定的相同 Excel 工作表。之後,點選“開發工具”選項卡,然後在“程式碼”部分下,點選“Visual Basic”選項。此步驟將允許使用者開啟 Visual Basic 編輯器。

步驟 2
上述步驟將為使用者開啟一個“Microsoft Visual Basic for Application”對話方塊:

步驟 3
轉到“插入”選項卡,然後選擇名為“模組”的選項。請參考影像快照:

步驟 4
請考慮以下給定的程式碼:
' method name Sub function_to_dis_wrk_path() ' display data to msgbox MsgBox ActiveWorkbook.Path, vbInformation, "Workbook Path" ' end of sub module End Sub
請使用正確的縮排編寫程式碼以避免語法錯誤。下面提供了編碼視窗的完整快照:

步驟 5
上述步驟將開啟名為“宏”的對話方塊。之後,選擇模組的名稱並點選“執行”按鈕以獲取生成的結果。

步驟 6
上述步驟將顯示一個名為“工作簿路徑”的對話方塊。此對話方塊包含工作簿路徑。最後,點選“確定”按鈕。

示例 3:使用 Kutools 選項獲取 Excel 中活動工作簿的位置
步驟 1
要將工作簿資訊插入 Excel 工作表。轉到“Kutools Plus”選項卡並選擇“工作簿和工作表”。之後,在“工作簿”選項下,選擇“插入工作簿資訊”選項。

步驟 2
上述步驟將開啟一個“插入工作簿資訊”對話方塊。此選項包含“工作表名稱”標籤,並且在“插入位置”標籤中,在範圍選項中新增一個有效的範圍以顯示資料。對於此示例,在範圍標籤下,新增“A1”值。在標題部分,選擇“左對齊”選項。最後,點選“確定”按鈕。請參考以下給定的快照:

步驟 3
最終顯示的路徑將顯示在 A1 單元格中。

結論
有時,使用者會忘記查詢活動工作簿的位置。本文在示例中演示了各種使用者自定義函式和 VBA 程式碼來獲取活動工作表的位置。請確保 VBA 程式碼中的語句必須小心編寫才能成功執行程式程式碼,否則可能會發生錯誤併產生意外的結果。