經常使用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 的文件了,看看狀态欄是不是已經成功打開同名文件了。
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!