2017-09-04 27 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)、( "["、CELL( "ファイル名"、A1))をFIND - 1)

にはこのリンクをチェックアウト詳細な説明:https://exceljet.net/formula/get-workbook-path-only

この方法では、ワークブックを開くコンピュータに基づいてパスが正しく設定されます。

この方法でワークブックをまとめて使用しようとすると、Excelが厄介になることに注意してください。誰かがあなたのフィーダワークブックに行または列を追加するとどうなりますか?シートのサイズにもよりますが、長期的には異なる解決策を検討することができます。

これが役に立ちます。

+0

ありがとうジョナサン! – Dbcooper

関連する問題