• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルでファイル名やシート名をセルに入力して計算式に反映させたい。)

エクセルでファイル名やシート名をセルに入力して計算式に反映させたい

nobu555の回答

  • nobu555
  • ベストアンサー率45% (158/345)
回答No.1

INDIRECT関数で別ファイルを参照できます。 しかし、参照ファイルを開いていないと参照しません。 ですので、マクロで参照ファイルを自動で開くような工夫が必要かも。 参考まで。

hanma
質問者

お礼

早速のご回答ありがとうございます。 INDIRECT関数も試してはみたのですが、例えばシート名を1つのセルに入れて絶対参照でやった場合、計算式の入ったセルの右下を引っ張っても同じものだけがコピーされてしまいうまくいきませんでした。

関連するQ&A

  • エクセルで複数のファイルのうちの特定のファイルのセルに計算式を挿入したい

    教えてください。 フォルダに300くらいのファイルがあり シート001.xls~シート300.xlsと名前が付いてます。 シート001.xls~シート100.xlsはセルC3に式A シート101.xls~シート200.xlsはセルC3に式B シート201.xls~シート300.xlsはセルC3に式C と言う風に違った計算式をいれたいのですが、マクロで いっぺんにやる方法は有りませんでしょうか。

  • 【エクセル】シート一括計算について

    AとB2つのファイルがあり、それぞれに同じ形式で数値が入力されています。 もう1つ同じ形式のファイルCを作り、各セル・シートごとにA+Bの数値をCに表示したいです。 ただし、100シート近くあるため、1シートずつ計算式を設定していくと 膨大な時間がかかるので、作業グループで処理したいと思いましたが、 作業グループではシートまでは自動選択できませんでした。 効率よく計算する方法はありませんでしょうか。 バージョンは2010です。 どうぞよろしくお願いいたします。

  • セルに表示されている 別ファイルのシートのセルを参照するには?

    たとえば data.xlsの セルB1には "12345" と入力された別ファイルがあるとして セルA1に data.xls セルA2に Sheet1 セルA3に B1 セルA4に ( =[data.xls]Sheet1!$B$1 )  "12345" を表示したい セルA4にはどのように記入すればいいのでしょうか VBAは使いたくありません よろしくお願いします。EXCEL2000

  • エクセルで、他のファイルをリンクする際、ファイル名だけをオートフィルできませんか?

    たとえば、EXCELで A1に、  〇1.xls  というファイルの  シート1   の   B5 セルを参照した場合          A                  B                C 1  [〇1.xls]シート1!$B$5     [〇2.xls]シート1!$B$5      [〇3.xls]シート1!$B$5 2  [〇2.xls]シート1!$B$5 3  [〇3.xls]シート1!$B$5 4  [〇4.xls]シート1!$B$5 A1セルからオートフィルしたら、A4セルまで、もしくはC3セルまで ファイル名だけ変わる、というようなことはできないでしょうか? ちなみに、EXCEL2003です。 詳しい方いましたら、どうぞよろしくお願いいたします。

  • Excel 計算式を別シートで計算表示させる

    所定のSheetにある数値を別SheetにてVLOOKUP等で数値表示させる事はできます。 Sheet1のセルにある計算式をSheet2のセルより数値ではなくSheet1計算式を使って計算して数値表示させたい。 よろしくお願いします。 Sheet1 A B C D 2 3 5 10 D1に=A1+B1+C1の計算式 Sheet1 A B C D 1 2 5 8 D1にSheet1=A1+B1+C1の計算式を使って表示

  • エクセル 計算式も入っていないのに 別シートの同一セルに連動 入力されてしまう

    WIN XP SP2 office2003 です。 エクセル計算式の直接入力 VBA(一切使用せず) 条件付書式 以下の状況は、以上での見落とし等々ではありません。 状況 1ファイル10シート以上に渡るかなり重たいもので 人員名簿を作成しました。 最初のシートを皮切りに、VBAを使わず関数や式のみを駆使し ソート等々を行い様々な表を作るものです。 既に完成し1年以上も使用しております。 その中で、あるリストを自動生成しており 該当者を抜き出し  1人目~ 30人目  シートA 31人目~ 60人目  シートB 61人目~ 90人目  シートC 91人目~120人目  シートD というようにリストの各ページを 1シートずつ分けております。 その中で、数値を入力するだけのセル 例えばシートCのセルJ23に「5000」といれると A・B・DのシートのJ23にも勝手に「5000」が 入ってしまい、またA・B・C・DのどこかのJ23で 削除すると他の3シートのJ23も全部削除される。 といったことが、時折り発生します。 最初に書いたとおり、計算式等々はそれらのセルに一切 ありません。 なにより!! とりあえずは完成したエクセルファイルですので 式等々は変更は加えていませんし。 今の今まで、正常に動いていたものが突然そのように バグり出すのです。 一度、例えばJ23にバグが発生すると、その他のセルにも 同様のことが発生しだします。 シートAのJ24は空白だったのいn シートBのJ24に何かを入れてしまった瞬間 A・C・Dにもそれが及び、もう数値を削除しても何をしても それがA・B・C・Dに同じ値を示してしまいづおしようもなく なるのです。 バグ後 触っていないセルは、他シートが全部同じ値になる ということは起こりません。 触ったとたんに全部に影響します。 保存して一端終了しても、PC再起動しても直りません。 もし、かろうじてバグ前の状態から保存をしていなければ キャンセルして、全てをやり直せば戻ります。 あやまって、計算式を削除したどうのといった単純なミスは 絶対にありません。 とにかく突然起こります。 いったいどういう状態なのでしょうか? 非常に困り果てています。 半年に1回くらい発生します。 バグその際に、特殊な数値や文字など決して入力しているわけ ではありません。 再計算途中に何かいらぬことをしたということもありません。 本当に突然バグります。 ちなみにファイルサイズはバカでかく5M弱です。 再計算に1回10~15秒ほど掛かります。

  • Excelについて:セルでデータを引っ張るファイル名を一律選択する方法

    教えてください。 Excelで他ファイルからデータを引用する場合、 =[file1.XLS]Sheet1!$B$1 の様に、 []内にファイル名(ここでは"flie1.xls")を入れればそのセルの内容が表示されると思うのですが、 そのファイル名をセルで指定することはできるでしょうか? 具体的にやりたい事は、 同一シート内のセルA1の値が"1234"であった時に、1234.xlsの中のSheet1!$B$1を探して表示する。 "1234"を"2345"に変更すれば、"2345".xlsの中のSheet1!$B$1を表示する。 ということが行いたいのです。 =[$A1$&".XLS"]Sheet1!$B$1 ではだめでした。 可能でしたら教えてください。 よろしくお願いします。

  • エクセルの関数で、セルに書いたファイル名を参照

    エクセルの関数で、セルに書いたファイル名を参照する方法が知りたいです。 エクセル関数初心者レベルです。 別のファイル(開いた状態)に欲しいデータがあって、そのデータをexcel関数(できればOFFSET関数等)を使って他のファイルで参照します。 その際、その関数に記載されるファイル名を別のセルに記入して、それを参照させるようにしたいのですが、どうすればよいのでしょう。 たとえば、afile.xlsというファイルのbsheetというシートのA1セルに欲しいデータ(数字または文字)があるとします。 afile.xlsを開いた状態で、別のファイル(new.xlsとします)のセルに、"="で参照させると =[afile.xls]bsheet!$A$1 という関数が入り、データも表示されています。 ここで、たとえばnew.xls上の B2セルに " afile.xls " とベタ打ちして、 上掲の=[afile.xls]bsheet!$A$1の [afile.xls] のところをB2セルを参照させるようにしたいです。単純にB2と打ち変えてみたりもしたのですが、うまくいかないようで。 どなたか教えて頂けるとたすかります。よろしくお願いいたします。

  • シート名を計算式に反映させる方法

    お世話になります。 エクセル2003で、毎日の日報を作成しており、日ごとに1シートを使用しています。B1セルには日付が入り、シート名はその日付と連動させています。その中で、当日までの売り上げの累計欄があり、その計算方法は串刺し計算で、日々のシートの前後に「Top」と「End]というシートを作り、例えばA1セルに当日の売り上げを入力するとすれば、A2セルに「=SUM(Top:End!A1)」と入力して、「Top」から「End」の合計を出しています。 ところがこの方法では、日付を遡って日報を出したい場合は、Endシートまでの合計が、遡った日付のシートでも計算されてしまうので、これを解決しようと思い、B1セルの日付データを使って =SUM('Top:text(B1,m月d日)'!A1) と入力してtopシートから当日までの串刺しをしようとしてみたのですが、=SUM('Top:[text(B1,m月d日)]text(B1,m月d日)'!A1)という式に自動的に変わってしまいできません。どのようにすればよいのでしょうか。マクロは使わない方向で、できればよろしくお願いいたします。

  • Excelにて外部Excelファイルのデータを参照する方法

    お世話になります。 Excelにて外部のExcelファイルのデータを参照する方法を教えていただけませんでしょうか。 具体的には、 1.Excelファイルa.xls b.xls c.xls・・・ があります。 2.a.xlsの a1 に b.xls の a1 の値を入力し、続けて a.xls の a2 に c.xls のa1・・・を繰り返していきます。上手く説明できないので、下を参照願います。 ------------------------------------------------ <a.xls> |a |b |c -+------- 1|a1|b1|c1 ←b.xls ないのa1-c1のデータ 2|a1|b1|c1 ←c.xls ないのa1-c1のデータ 3|a1|b1|c1 ←d.xls ないのa1-c1のデータ ------------------------------------------------ 上記を数百のファイル分行いたいのですが、外部ファイルを開いて該当のセルをコピーしていると非常に時間がかかります(といいますか無理でしょう)そこで、これらを数式から指定して、セルにコピーする事により、作業を効率化したいというわけです。 そのような方法がございましたら、教えていただけませんでしょうか。 よろしくお願い致します。