Excel表格 如何開啟多個同名檔案?

經常使用office辦公的友友,可能在開啟同名檔案時,遇到了下面的錯誤提示,很抱歉,Excel無法同時開啟兩個同名的工作簿

復現問題:

簡單復現一下這個問題,在當前資料夾下建立 1.xlsx, 然後建立目錄 a, 在目錄 a 下建立 1.xlsx, 2.xlsx 兩個檔案。三個檔案路徑如下所示,

$ find ./ -name "*.xlsx"

./1.xlsx

./a/1.xlsx

./a/2.xlsx

然後開啟 1.xlsx, 此時再開啟目錄 a 下的 1.xlsx 就會出現上面的錯誤提示,但是開啟 a 目錄下的 2.xlsx 就沒有問題。

為什麼不能開啟兩個同名的檔案呢?

雖然從工作列中可以看到,開啟的是多個視窗,但是其實這兩個視窗並不是獨立的,它們共享著很多東西,下面我們深入檢視下。

開啟其中一個工作簿的開發者工具,進入 VIsual Basic 可以看到,另一個視窗的檔案資訊也在此處展示。可見,雖然是兩個視窗,但並不獨立,同時從展示的資訊中可以看出 Excel 是按檔名來區分這兩個工作簿的,所以當我們再開啟同樣檔名的工作簿時,就報錯了。

這是Office內部的原因造成的,在VBA中可以用檔名來訪問工作簿的,若是可以開啟同樣檔名的兩個檔案,下面的程式碼究竟是訪問的那個那?這在VBA中是不允許的。

Set WB1 = Workbooks(“1.xlsx”)

有沒有方法可以同時開啟兩個同名的工作呢?

當然有,重新命名這裡就不考慮了,因為重新命名後就不再是同名檔案了。

因為上面的多個 Excel 視窗,屬於同一個 Excel 例項。因此可以使用另外一個 excel 例項就可以了,這樣兩個 Excel 例項是獨立的,互不影響。

操作步驟如下,在工作列已開啟的 Excel 處,滑鼠右擊,然後再彈出的選單處,按下 Alt 鍵同時,滑鼠點選選擇 Excel

這時,會彈出如下的視窗詢問是否啟動新的新的excel例項,此時選擇是,

這時就可以在新開啟的 Excel例項中開啟另一個 1.xlsx 的檔案了,看看狀態列是不是已經成功開啟同名檔案了。