2017-09-04 88 views
-1

我試圖創建一個主Excel表單,該表單從位於與主表單相同的文件夾中的其他幾個Excel表單中導入數據。我的問題是,當我創建一個數據連接時,excel正在存儲文字路徑名,根據訪問主表的用戶而變化。將Excel中的數據源鏈接到共享驅動器

例如,當我創建數據連接時,路徑存儲爲F:\ shared \ mybossesfolder \ source1.xlsx。

但是,其他用戶的共享驅動器名稱不同。例如,我的老闆的共享驅動器通常(但不總是)驅動器O.因此,爲了讓主導入數據,源文件路徑需要爲O:\ shared \ mybossesfolder \ source1.xlsx。

如上所述,主設備和它的源位於每個用戶的同一文件夾中,只有驅動器名稱發生更改。無論分配給用戶的驅動器名稱如何創建可以工作的數據連接?

非常感謝!

+1

您是否嘗試過UNC路徑?或者我誤解了你的問題? –

回答

0

我會避免硬編碼到您的Excel表的路徑。相反,您可以在單元格中編寫公式以表示主工作簿的路徑,然後使用連接函數(https://support.office.com/en-us/article/CONCATENATE-function-8f8ae884-2ca8-4f7a-b093-75d702bea31d)。

要顯示你的主人工作簿的全名和路徑,你可以使用:

= CELL(「文件名」,A1)

要隔離人的路,你可以使用字符串操作。是這樣的:

= LEFT(CELL( 「文件名」,A1),FIND( 「[」,CELL( 「文件名」,A1)) - 1)

檢查出此鏈接爲一個更詳細的解釋:https://exceljet.net/formula/get-workbook-path-only

這樣,根據打開工作簿的任何一臺計算機,路徑都是正確的。

請注意,當您試圖用這種方式將工作簿連接在一起時,excel會變得雜亂無章。如果有人向您的一個進紙器工作簿添加一行或一列,會發生什麼情況?根據工作表的大小,您可能需要考慮長期不同的解決方案。

希望這會有所幫助。

+0

謝謝喬納森! – Dbcooper