• ベストアンサー

Excel 外部データ接続のファイル場所の更新方法

Excelで商品IDのシートを別のExcelファイルから外部データ(クエリ)として接続して表示させ、データベースを入力するシートで入力したIDを検索値として、INDEX関数にMATCH関数を組み合わせてデータ入力をしています。 データーベースのファイル場所を変更、又はExcelファイルを保存しているフォルダ名を変更した場合、リンクが切れて検索結果が#REF!表示になりますが、ファイル場所を更新してリンクを対応させる方法はありますでしょうか。 データベースのシートの内容は [Sheet1]  商品ID クエリで商品IDを登録しているマスタデータを別のExcelファイルからクエリとして表示 [Sheet2] マスタデータ IDを検索値としてSheet1からINDEX+MATCH関数で値を抽出 商品に含有している物質名、含有量を入力する。 ひとつの商品IDに複数物質が含まれるので、ID重複を避けるためID列の横にID2の列を設け、IDが重複したらID2に連番を振ります。 例)COUNTIF($A$2:A2,A2) 外部Excelファイルの格納しているフォルダの名前を変更したり、フォルダー場所を変えたときはリンクが切れてしまい検索結果がエラーになると思われますが、その場合はもう一度INDEX関数や、外部データクエリを作り直すのでしょうか。 商品IDを登録しているExcelファイル、データーベースのExcelファイルを格納しているフォルダ名を変更したいです。 データベースファイルの位置関係 ■[フォルダ]〇〇課使用商品データ ←ここのフォルダ名を変更したい  ■[フォルダ]A班使用商品マスタデータ   □[Excelファイル]A班使用商品マスタデータ.xlsx  ■[フォルダ]B班使用商品マスタデータ   □[Excelファイル]B班使用商品マスタデータ.xlsx  ◻[Excelファイル]登録商品IDマスタ.xlsx ややこしいですが、フォルダ名を変更してもリンクを切れなくする方法があれば、ご教授下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Excelで外部データをクエリとして表示させ、INDEX関数とMATCH関数を組み合わせてデータ入力をしている際に、外部Excelファイルのフォルダ名や位置が変更されるとリンクが切れてしまい、検索結果がエラーになる問題が発生する場合、以下の手順で対応することができます。 1. 外部データをクエリとして表示させているExcelファイルを開きます。 2. 「データ」タブをクリックし、「クエリの詳細設定」を選択します。 3. クエリの詳細設定画面で、「データのソース」を選択します。 4. 「Excelファイル」を選択し、表示されるダイアログで新しいファイルのパスを指定します。これにより、外部Excelファイルの新しい場所を指定することができます。 5. パスが正しく指定されたら、「OK」をクリックして設定を保存します。 これにより、外部Excelファイルのフォルダ名や位置が変更されても、クエリが新しいフォルダに対応するようになります。 ただし、ファイル名が変更された場合や新しいファイルに置き換える必要がある場合は、手動で新しいファイルを指定する必要があります。INDEX関数やMATCH関数は、自動的に新しいフォルダやファイルに対応する機能はありません。 以上が、Excelで外部データを使用し、リンク切れを回避するための対応方法です。お困りの点がありましたら、遠慮なくご質問ください。 ------ こちらの回答はAIエージェント「あい」による自動投稿です。 OKWAVEのAIに対する取り組みについてはこちらをご確認ください。 https://staffblog.okwave.jp/2023/06/07/10415/

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

https://ja.extendoffice.com/documents/excel/953-excel-list-all-links.html#vba Excelですべてのリンク(外部参照)を見つけて一覧表示するにはどうすればよいですか? で述べられている、そう言った方法があります。 VBA以外にも、ツール利用などの方法があるようです これで具体的な参照箇所の場所や参照先のデータを出して、それ等の(場所などの)特徴などを掴んだうえで、それら新旧ファイル名シートセル番地などを記して質問してはどうでしょうか。 自動(VBA)で変更可能性もあるかもしれません。 >INDEX関数にMATCH関数を組み合わせてデータ入力をしています は読者に関係ないと思います.関数の問題ではないでしょう。 その関数を使っているセルと関数式をリストすることはできますが。 ーー 実際のデータ(状況)を読者は使えない(当たり前ですが)のが、状況の理解や回答を難しくしています。 VBAは使っていない等に拘らない方がよいと思う。 この事態だけ解決すれば、まる写し実行もやむを得ないのでは、と思った。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのデータをアクセスのテーブルに移動入力する

    エクセルのデータをアクセスのテーブルに移動入力するVBA フォルダAにおいて、a1.xlsxというファイルがあり、 そのsheet1のセル(a,1)=1 A1が1 とします その値をアクセスのデータベース(これもフォルダAにあります)  b.accdbのテーブル1の フィールド1に入力したいときの エクセルマクロのVBAを御教示いただけると助かります さらに続けて フォルダAにおいて、a2.xlsxというファイルがあり、 そのsheet1のセル(a,1)=2 A1が2 とします その値をアクセスのデータベース上記と同じ  b.accdbのテーブル1の フィールド1に追加で入力したいときの エクセルマクロのVBA 以上わかると助かります よろしくお願いします win10 office365

  • Excelで外部データをインポート後、データの更新

    テキストファイルのデータをExcelに取り込み、その後、外部データ(テキストファイル)を更新。 エクセルの外部データツールバーのデータ更新ボタンを押すと 「データの更新を実行すると、クエリを使用して外部データがExcelにインポートされます。このようなクエリは、機密情報にアクセスし、その情報を他のユーザーが利用できるようにしたり、その他の問題を起こす可能性のある操作を実行するようにデザインされている可能性があります。」 とメッセージが出ます。 これはいったいどういう意味でしょうか? クエリってAccessのファイルでもないのになぜですか??

  • 【エクセル】複数ファイルからのデータ引用

    エクセルについて質問がございます。 現在、複数の人間が同じフォーマットにてデータを入力しており、 そのデータを、1つのエクセルの1つのシートに引用したいと考えております。 (例) (1)ファイルA、シート「個人名A」、セルA1「回答1」 (2)ファイルB、シート「個人名B」、セルA1「回答2」 (3)ファイルC、シート「個人名C」、セルA1「回答3」 上記3ファイルのデータを以下のファイルに引用したいと思います。 統合先ファイル:ファイルD、シート「集計」 A1セルには(1)のデータ、 A2セルには(2)のデータ A3セルには(3)のデータ この際、 ファイルDの A1セルには ='[ファイルA.xlsx]個人名A'!$A$1 で「回答1」と表示されます。 A2セルには ='[ファイルB.xlsx]個人名B'!$A$1 で「#VALUE!」と表示されます。 A3セルには ='[ファイルC.xlsx]個人名C'!$A$1 で「#VALUE!」と表示されます。 この場合、A2セルとA3セルにもそれぞれの「回答」を表示させる方法がありますでしょうか。 ご回答いただけると、大変助かります。 よろしくお願いいたします。

  • Excelシート上に貼り付けられたファイルの保存

    Excelシート上(A.xlsx)にさらにExcelファイル(B.xlsx)が貼り付けられています。 A.xlsxのシート上では、ExcelのアイコンとB.xlsxのファイル名が見えている状態です。 アイコンをクリックしてB.xlsxのファイルを開くことはできますが、そこから保存しようとすると、A.xlsxのファイル名で保存されようとします。 アイコンの右クリックでもExcelファイルとしての保存はできなさそうです。 このB.xlsxを、簡単にB.xlsxのファイル名で保存する方法はないでしょうか? もちろん手で画面をみながら再入力すれば可能ですが、入力ミスや手間を省きたいのです。 Excelのバージョンは2010です。

  • 〔VBA・マクロ〕EXCELからACCESSデータをひっぱるには?

    当方のレベルはアクセス初級者(基本的な操作)、 エクセルはごく簡単なVBAをいじる中級者です。 アクセスにて顧客マスター、商品マスターを作成しています。 エクセルで納品書を作成しています。 現状では外部データの取り込みをつかって エクセルシートに顧客データ(シート1)と商品データ(シート2)を 取り込んだ後に、納品書(シート3)でシート1、2に VLOOKUP関数をかけて、納入先と商品情報を 伝票におとしこんでいます。 こんなまどろっこしいことをせずに、 エクセルからアクセスのテーブルへ直接データを取り込む方法は ないものでしょうか? どなたかよろしくお願いいたします。

  • Excelで違うファイルのデータを参照する

    EXCELで違うファイルにあるワークシート上のセルを参照することはできるのでしょうか。 巨大データベースから必用なデータをピックアップして表示したいのですが データベースが大きい為、全てを読み込むのに時間がかかります。 データを表示するファイル上に条件を入力すると、データベースの対応するワークシート上のデータを表示できるようにしたいのですが。。。

  • 複数のエクセルファイルを1つのエクセルファイルのシートにコピーをマクロ

    複数のエクセルファイルを1つのエクセルファイルのシートにコピーをマクロで行いたい。 マイドキュメントのデーターというフォルダ内に エクセルファイルA(シート名みかん) エクセルファイルB(シート名りんご) エクセルファイルC(シート名バナナ) エクセルファイルD(シート名ぶどう) エクセルファイルE(シート名いちご) があります。 雛形は同じです。すべてA列~F列までデータが入っています。 行数はファイルによって違います。 また毎日自動で上書き更新され、毎日行数が変わります。 エクセルファイルZがあります。シートが7個あります。 ・変換 ・集計 ・みかん ・りんご ・バナナ ・ぶどう ・いちご エクセルファイルZを開きます。(各シートには昨日のデータが貼り付けてあります。) マイドキュメントのデーターフォルダも開いておきます。 エクセルファイルZにおいて「マクロの記録」を起動。 エクセルファイルZの 【みかん】~【いちご】までの5シートを全データDELETEします。 開いてあるフォルダ「データー」の中からエクセルファイルAを開きます。 (タスクバーにいます) ファイルAのシート【みかん】の全データ選択して エクセルファイルZの【みかん】というシートのA1セルにカーソルを あわせて貼り付けします。 開いてあるフォルダ「データー」の中からエクセルファイルBを開きます。 (タスクバーにいます) ファイルBのシート【りんご】の全データ選択して エクセルファイルZの【りんご】というシートのA1セルにカーソルを あわせて貼り付けします。 これと同じ操作を【バナナ】【ぶどう】【いちご】も行います。 エクセルファイルZにおいて「マクロの記録」を終了させます。 マクロができあがりました。 ファイルZを上書き保存して終了。再立ち上げで記録したマクロを実行。 エラーにはなりませんが、ファイルZの5種類各シートに ファイルA~Eのデータが貼りつきません。 何か無理な事をしているのでしょうか? もしかしてシート名が同じだと駄目?とためしにファイルZのシート名【みかん】~【いちご】を 【みかんZ】~【いちごZ】に変更してマクロを再記録しても 駄目でした。 よろしくお願いします。

  • エクセルファイルの特定セルに別エクセルファイルのデータを入力することについて

     お詳しい方よろしくお願いします。 <状況> (1)ファイル名が「001.xlsx」から「100.xlsx」まで100個のエクセルファイルがあります。 (2)これら100個のファイルそれぞれのA1セルに入力したいデータが入力されたエクセルファイル(集約データ.xlsx)があります。 集約ファイル.xlsxの内容    A列          B列 1  001  平成21年4月から平成21年5月まで 2  002  平成21年7月から平成21年12月まで 3  003  平成21年4月から平成21年10月まで ・ ・ というように、A列にはデータ出力先エクセルファイル名 B列には、A列に入力されたエクセルファイルのA1セルに出力したいデータが格納されています。 <行いたい作業> 集約データ.xlsxのB列に格納してあるデータをA列のファイルに出力したいと考えています。 ついては、この方法をご教示いただきたいと存じます。 よろしくお願いします。

  • Excelで外部ファイルの取り込み(データの更新)をマクロ化したい

    C:\data のdataフォルダの中に「20060709.dat」「20060710.dat」「20060711.dat」・・・というようにファイル名に日付が入ったファイルがあります。 例えば、(データ)→(外部データの取り込み)で"sheet2"に「20060709.dat」を読み込んでいるとしします。 この時に"sheet1”のセルA1に「20060710」と入力してマクロボタンをクリックすると"sheet2"に「20060710.dat」を(データ)→(データの更新)で読み込むというような作業をマクロで自動化することは可能なのでしょうか? 可能であれば教えて頂きたいのですが。どうぞよろしくお願いします。 ちなみにマクロに関しては(自動記録)で作ったマクロを少しいじる程度の知識しかありません。Excel2000を使用しています。 以上、どうぞよろしくお願い致します。

  • エクセルで違うエクセルファイルのセルデータを・・

    エクセルで AAA.xlsx BBB.xlsx CCC.xlsx  ・  ・  ・ と、ファイルが随時ファイルが追加されていきます。 そのファイルの書式は全て同じです。 その随時増えていく各ファイルの指定したセルの内容を 2010TOTAL.xlsxに自動で持ってきたい時の関数はありますか? 2010TOTAL.xlsxの中に追加になっていくファイル名を随時入力すればOKなのはわかるのですが・・・ ファイル名が任意で増えていくなか、2010TOTAL.xlsxをいじらないで自動で入る方法があるのか、どうかもわかりません。 よろしくお願いします。

このQ&Aのポイント
  • Windows 10の更新が「コンピューターに対する変更を元に戻しています」という表示のまま進まない問題について、対処法を教えてください。
  • 更新が長時間(丸一日)経過しても進まず、自動的に再起動も行っているが解決しない問題が発生しています。
  • YOGA TBLET2を使用しており、仕事ができない状況に困っています。待つ以外の対処法はありますか?
回答を見る

専門家に質問してみよう