• 締切済み

エクセルで他のブックのセルデータの更新方法は?

Noubleの回答

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.5

追記 データファイルは 開けっ放しでも 実は、構わない の、ですが 抑も、 内部変数 特に グローバル変数、等で 処理せず トランザクションデータファイルを 儲け、処理する 其の、意義 と、しては 処理の堅牢性 言い変えれば トラブルリカバリー性 と、言う 此の点が、 上記の、 其の、意義 と、して 多く、挙げられる 要素群の、一つ な、訳 ですが 他方で オープンしっぱなしで 処理終了したFileは 他からは 開けない可能性が、出ます 言うまでもなく、此では、 処理の 堅牢性、リカバリー性、 其れ等が、保てません 故に、 開きっぱなしにする様な、やり方では 意味消失し グローバル変数で、処理させた方が 利点が、多くなります と、言う事で 結局は 「データファイルは 小まめに、クローズする」 此を、お勧めします よ まぁ、 オープン、クローズ、 の、オーバーヘッドは 増えますが、ね あと、実質的な、 VBAコードを、ご所望なら 別途、其の旨 お求めください。

関連するQ&A

  • エクセルのマクロで、別ファイルの数値を参照する方法

    現在aaa.xlsというファイルを開いていて、 そのセルA1には20070621という数値が入っています。 別にbbb_20070621.xlsというファイルがあって、 そのファイルのsheet1内の、B1の値を参照したいと思います。 bbb_20070621.xlsのようなファイルが無数にあるので、 ファイルを開かなければいけないINDIRECT関数は使いたくありません。 =INDIRECT("[bbb_"&A1&".xls]Sheet1!B1") ファイルを開かず参照できるように、 できればマクロ(VBA)で組みたいと思っています。 RangeやCellでいろいろ試してみたのですが、 どうもうまくいかず、 分厚いマニュアルにも書いてありませんでした。。 初歩的な質問ですいませんが、 どなたかよろしくお願いします。

  • 参照先をセルに入力して、他のブックのセルを参照する方法

    Excelで、他のブックのセルを参照したいです。 たとえば、あるExcel(test.xls)上から、別のフォルダにある複数のブック C:\AAA.xls D:\BBB.xls の値を参照する場合ですが(AAA.xlsとBBB.xlsは、値の内容は違うが、同じシート名の同じセルに値が入っている)、 test.xlsのSheet1のA1に「C:\」、A2に「AAA.xls」を入力すると、test.xlsのSheet2にはAAA.xlsの値を表示し、 test.xlsのSheet1のA1に「D:\」、A2に「BBB.xls」を入力すると、test.xlsのSheet2にはBBB.xlsの値を表示するような方法です。 参照先が固定であれば、='C:\[AAA.xls]Sheet名'!D5・・・のような指定ができるのですが、参照するファイル名とパス名が都度変わるので、入力したセルの値で参照先を変えたいのです。 ちなみに、INDIRECTを使うやり方も考えましたが、参照先のブックを開いていないと値が表示されないようなので、却下されました。 (参照先のブックは開かなくても値を参照させたいです) どなたかご存知の方がいらっしゃったら、教えてください。 よろしくお願いします。

  • 他のブックファイルのセルの参照が上手く行きません

    こんにちはよろしくお願いいたします。 エクセルのブックファイル(Book1.xlsx)に,他のブックファイル(Book2.xls)のセルの値を参照しようと思い”=”を入力し参照するブックファイルのセルをクリックし,「 =[Book2]Sheet1!$A$1 」のような参照を行いました。こうしてきちんと表示されました。 しかし,この参照の式を「 =[Book3]Sheet1!$A$1 」のように,他のブックファイル(Book3.xls)のセルに変更したところ,参照できなくなりました。ブックファイル(Book1.xlsx)には,「 =[Book3]Sheet1!$A$1 」という式そのものが表示された状態となっています。式は,キーボードを使って変更しました。もちろん,(Book3.xls)は,(Book2.xls)と同様のシート形式をもち,データも入力されています。 このような状態になると,先に挙げたように,”=”を入力して参照するブックファイル(Book3.xls)のセルをクリックしても,ブックファイル(Book1.xlsx)には,「 =[Book3]Sheet1!$A$1 」という式そのものが表示された状態となったままで,(Book3.xls)のデータは表示されません。 (Book2.xls)と(Book3.xls)のセルのデータは,文字列です。 気になるのは,(Book1.xlsx)はoffice2010で作成されたファイルであること,(Book2.xls)と(Book3.xls)は,互換モードと表示されるファイルであること,また表示されているファイルを見ると,フルパスで参照している点です。「 ='C:\aaa\bbb\・・・・・[Book3]Sheet1'!$A$1 」という参照式になっています。3つのファイルはすべて同一ファイルに入っています。 何が,参照を阻んでいるのでしょうか?教えてください。よろしくお願いします。

  • セルのデータを使って、ファイルを参照する方法

    現在aaa.xlsというファイルを開いていて、 そのセルA1には20070620という数値が入っています。 別にbbb_20070620.xlsというファイルがあって、 そのファイルのshhe1内の、B1の値を参照したいと思います。 こんな感じかなと想像したのですが、うまくいきません。。 ↓ =["bbb_" "& A1 &"".xls"]sheet1!B1 初歩的な質問ですいませんが、 どなたかよろしくお願いします。

  • EXCEL VBAで指定したブックの保存場所を検索したい。(EXCEL2003)

     こんにちは、チェーン店型の店舗で働いている者です。  私が作ったVBA付のエクセルファイルを複数の店舗で使ってもらおうと考えてます。しかし、そのワークシートの中に他のブック(ここでは『売上集計表.xls』)のセルの値を参照しているセルが含まれており、参照する『売上集計表.xls』の保存場所が店舗によって違うので困っています。 『売上集計表.xls』は会社で作成されたものですので、どの店舗でも同じファイル名、レイアウトのうえ、『売上集計表.xls』という名のEXCELファイルはパソコンの中にひとつしか存在しません。 エクセルを起動したときに、参照するファイルが見つからないとリンクの編集をたずねてくるので、それでも大丈夫なのですが、パソコンに疎い人も多いので出来ればVBAで自動的にリンクを設定できるような仕組みがあればと思い質問させていただきました。

  • Excelで他Excelファイルのセルの値をVBAで参照したい時

    こんにちは。 Excelで他Excelファイルにあるセルの値をVBAで参照したい時って、 場所をどう指定したらいいのでしょうか。 やろうとしている事ですが、 c:\1.xlsに記述するVBAで c:\2.xlsのsheet1のA1の値を参照して、 それとc1.xlsのsheet1のA1の値が一致した時に、 c:\2.xlsのsheet1のB1の値を、 C:\1.xlsのsheet1のB1に書き出そうとしています。 派遣就業先でAccessで作ればいいものを なぜか社員の方たちでExcelで作ってしまったため、 そのメンテに四苦八苦しています。(笑) ご存知の方ぜひ教えてください。 よろしくお願いします!

  • 他ブックのセル参照するのに名前をセルで指定して参照させたい。

    他ブックのセル参照するのに名前をセルで指定して参照させたい。 題名が適当でないかもしれませんが、よろしくお願いします。 オフィス2000もしくは2002です。 200604.xls、200605.xlsという日付を基にした名称の規則的なブックがあります。 ファイル自体はネットワークの共通ドライブにあります。 それぞれsheet1に同様の形式で値のデータ(文字)が入っています。 その中のA1、B1、C1~・・・の値を 別ブック(仮にtest.xls)のA1に2006、A2に5と入力させることによって test.xlsの3行目に200605.xlsのA1、B1、C1~・・・の値を表示させたいです。 ブック名 test.xls    A列  B列  C列 ・・・・・・ 1行 2006 2行  5 3行 200605.xlsのA1、B1、C1~の値を表示させたいです。 4行 フォルダー名\[200605.xls]sheet1'!A1、次B1、次C1、と都度埋め込んでいけば値自体は出るのですが、 ブック名が手軽に変えられなくて困っています。 test.xlsのセルに埋め込んだ ='フォルダー名\[200605.xls]sheet1'!A1の [カッコ内]の文字をA1,A2セルに入れた値で参照させたいのですが、、、。 (A2は5ですが、参照したいのは2006の05というのも少々ミソです) 結果が同じなら手段はそんなには問いません。 よろしくお願いします。

  • Excelにて他のパソコンにファイルをコピーした場合のリンク(値の更新)について

    Excelのバージョンは2003以降です。 《ファイル1》 ドライブ:\XXXXX\○○○○○\△△△△△\12345.xls 《ファイル2》 ドライブ:\XXXXX\○○○○○\abcde.xls ファイル1はファイル2より特定のセルの情報を取得しています。 (数式例) ='ドライブ:\XXXXX\○○○○○\[abcde.xls]シート'!$AV$8 しかし、○○○○○フォルダ以降を他のパソコンに持っていくと ドライブ:\XXXXX\ の部分が違う為 「このブックには更新できないリンクが1つ以上含まれています。」 という警告画面が出てしまいます。 12345.xlsが有るフォルダの1つ上位のフォルダに有るabcde.xlsの値を参照する。 という感じに、ドライブ:\XXXXX\の部分が変わっても 警告画面を出さずに値を更新する方法はありますでしょうか? ご教授をお願い致します。

  • 他のBookに指定している外部参照先をセルの文字列で指定する方法

    マクロを使わずに外部参照先を変更する方法を探しています。 例えば, C:\○○フォルダにA+1.xls,A+2.xls・・・A+10.xls という感じでA+X.xlsのXの部分が1~10までのファイルがあります。 それぞれのファイルのSheet1!A1に数値が入力されています。 開いているBookのセルC1に ='C:\○○[A+X.xls]sheet1!A1 みたいな感じで数式を入力して, セルB1にXの部分(1~10)を入力すると セルC1に入力した番号のファイルの Sheet1!A1の数値を出力する方法はないでしょうか? マクロではできるのですが,マクロを使わずに実現したいです。

  • Excelで、閉じるときに、保存するか訊かれて判断に迷うときは

    Excelで、ファイルを開いた後、何かを変更すると、閉じるときに、「・・・xlsへの変更を保存しますか」と訊いてきます。 「何も自分では変更していないのに、このダイアログボックスが出てくる」ということではありません。 そのときに、保存に値する変更なのか、保存に値しない変更なのか、を私が判断するにはどうすればよいでしょうか。 Excelにとっては「変更」であっても、私にとっては保存したくないことがあるのです。 例えば、 列幅が広い列があったときに「同時に画面上に幾つも列を表示したいから」、 列幅を変更しただけかもしれません。 何かデータを入力したが、やっぱり入力する必要がなくて、消したかもしれません。 「保存に値する変更なのか、保存に値しない変更なのか」なんてことは、 自分という「人」が考えているだけで、 Excelが判断することはできないのです。 自分が「はい」か「いいえ」のいずれかを選択しないと、まともにExcelを終了することができません。 「・・・xlsへの変更を保存しますか」と訊いてきたときに、「いいえ」をクリックすれば、 無事、変更が保存されないで済みます。 でも、自分は、保存に値するような変更をしているかもしれません。 「・・・xlsへの変更を保存しますか」と訊いてきたときに、「はい」を選択すれば、無事に変更が保存されますが、無駄な変更が保存されたかもしれません。 非常に困るのは、いつでも「はい」を選択して保存すると、 ファイルの更新日時が変わってしまうことです。 私は、どんな操作をしたか、ということは逐一覚えていません。 ファイルを開く時点では、そのファイルを編集して保存しようか、それとも見るだけにしようか、決心がついていません。 Excelのバージョンは、2000です。 うろ覚えですが、後のバージョンなら、編集の「元に戻す」に変更した履歴が出ていたような気がします。