こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

回答受付中の質問

エクセルで、他のエクセルのデータを表示

エクセルのファイルが2つあり、AとBとします。
AファイルのA1セルに、BファイルのA1セルの情報を表示させたいのですが、
AファイルのA1セル='C:\フルパス\[ファイル名]Sheet1'!$A$1
と表示させる事で表示できます。

ここで、Bファイルは定期的に差し替えたいのですが、
上書きしたり、Bファイル削除→新しいBファイルを配置すると
AファイルのA1セルは"0"と表示されてしまいます。
Bファイルを新しくしても、そのファイルのA1セルの情報を
AファイルのA1セルに表示させる方法はあるのでしょうか。

Bファイルの配置とファイル名は変えていません。

投稿日時 - 2018-06-07 11:07:17

QNo.9505952

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

>ファイルを開かずに更新したいので、実用には難しそうです。
処理の手順によって異なるようです。
ブックAが閉じた状態でブックBのデータを書き換えて保存し、その後にブックAを開いたときリンクの更新の要否が問われたとき「更新する」を選択すると従来の方法では更新されますが、INDIRECT関数に置き換えたときは更新されません。
質問の文言では「Bファイルは定期的に差し替えたいのですが、上書きしたり、Bファイル削除→新しいBファイルを配置するとAファイルのA1セルは"0"と表示されてしまいます。」と言っていますが、ブックB(Bファイル)の更新時にブックAを閉じていれば影響が無いように思われます。
従って、ブックBの保存先フォルダーやファイル名を変更していなければ質問のような現象にならず、INDIRECT関数にする必要が無いでしょう。
つまり、質問のような現象が起こらないと思われます。

投稿日時 - 2018-06-07 18:57:59

ANo.1

>Bファイルを新しくしても、そのファイルのA1セルの情報を
>AファイルのA1セルに表示させる方法はあるのでしょうか。
>Bファイルの配置とファイル名は変えていません。
INDIRECT関数で試されたら如何でしょう?

=INDIRECT("'C:\Users\bunjii\Desktop\[Test.xlsx]Sheet1'!$A$1")
但し、対象のファイルを開かないと値が更新されません。

投稿日時 - 2018-06-07 11:42:17

補足

返信ありがとうございます。以前よりは少し使い勝手がよくなりましたが、ファイルを開かずに更新したいので、実用には難しそうです。
せっかく返信頂いたのに申し訳ありません。

投稿日時 - 2018-06-07 12:37:22