• ベストアンサー

別シートのセル参照

Excel(Win2000,Excel2002)で別シートのセルを参照する場合、シート名を入れると思うのですが、シート名を入れずに一つ右隣のシートというような指定をする事が出来ますか?記号などを使用して出来るのであれば方法を知りたいのですが。お願いします。

  • ari_1
  • お礼率36% (4/11)

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

  • ベストアンサー
noname#10474
noname#10474
回答No.3

EXCEL勉強中の身です。No.2のnihonjinnさんの回答を 見ながら、自分でもやってみました。 nihonjinnさんの説明----    =CELL("filename",A1)    これでこのシートの情報が出てきます。指定する    セルはどこでもいいです。My Documentsにある    BOOK1のSheet1なら    C:¥My Documents¥[BOOK1.xls]Sheet1    となります。    これがB1にあるとするとC1に    =RIGHT(B1,LEN(B1)-FIND("]",B1))    と入れるとSheet1が抽出されます。 ----------------------- というのを、私レベルに解釈すると、 「以上のとおりに入力すると、 C1のところに、今現在触ってるシート名(=Sheet1)が、シート名を入力することなしに表示できます」ということで、ここまでは、オーケーかと思います。 問題は次の =INDIRECT("Sheet"&RIGHT(B1,1)+D1&"!A1") だと思うのですが、 ヘルプでは、「INDIRECT」で、しらべると、一応、この関数の説明が出てきます。 この式を私なりに分解して解釈すると、 RIGHT(B1,1)  B1つまり「Sheet1」という文字列の右から1番目の文字を取り出すということ。この場合は、「1」。 +D1 たとえば、D1に、3が入力されていれば、1+3=4となる。 とすると ("Sheet"&RIGHT(B1,1)+D1 このばあい、Sheet4を意味するわけで。 で、&"!A1"というのが、この後ろについてますが、 これは、以上から、Sheet4!A1、となるわけで、 =INDIRECT("Sheet"&RIGHT(B1,1)+D1&"!A1") と入力したセルには、今触ってるシートの右3番目のシートのA1が表示されるということだと、理解しました。 つまり、D1を、セルじゃなくてただの 1 という数値にすれば、一つ右隣のシートを指定できるということですよね。 うまく噛み砕けているか自信なしですが、参考になったでしょうか。

ari_1
質問者

お礼

お礼が遅くなって申し訳ありません。 とても参考になりました。試してみた結果うまくいきました。どうもありがとうございます。

その他の回答 (2)

  • nihonjinn
  • ベストアンサー率39% (79/200)
回答No.2

=CELL("filename",A1) これでこのシートの情報が出てきます。指定するセルはどこでもいいです。My DocumentsにあるBOOK1のSheet1なら C:¥My Documents¥[BOOK1.xls]Sheet1 となります。これがB1にあるとするとC1に =RIGHT(B1,LEN(B1)-FIND("]",B1)) と入れるとSheet1が抽出されます。 後はD1に数値が入ってるとして =INDIRECT("Sheet"&RIGHT(B1,1)+D1&"!A1") などと工夫してみてはいかがですか。Sheet1,Sheet2と数字を変えていけばいい分けです。数字が二桁ならまた工夫が必要です。 わからない点があればまた。

ari_1
質問者

補足

回答ありがとうございます。Excelが詳しくない為、なかなか理解出来ないのですが、A1,B1,C1,D1などの意味が良く分かりません。ヘルプなどを調べてみたのですが、思うような物が見つからず、もしヘルプに載っているのであればキーワード等教えていただけますか?

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

(1)関数式の中で使う表現としては、見とめられていないでしょう。 (2)VBAで Sub test01() MsgBox ActiveSheet.Next.Name End Sub を実行すると シートタブがSheet3-sheet4の順序の時、Sheet3をアクチブにして実行すると、Sheet4と表示されました。 シートタブがSheet4-sheet3の順序の時、Sheet3をアクチブにして実行すると、エラーになりました。見た目の隣りのシートを指定出きるようです。 MsgBox ActiveSheet.Previous.Nameも使えました。 またWorksheets(1),Worksheets(2)などの指定がで来ます。しかし右隣とは限りません。

ari_1
質問者

お礼

回答ありがとうございます。VBAを全く知らない為、VBAの知識がないと難しいですね。今後、VBAも使用したいと思いますので参考にさせていただきます。ありがとうございます。

関連するQ&A

  • 別シートのセルを絶対参照にする

    office2007、Excelで別シートのセルを絶対参照する方法を教えて下さい。 セルに「=シート名セル番地」を力した場合は、 セル番地を$で絶対参照にしても 参照先シートのその上に行を挿入すると $A$5を指定していても行を挿入した場合は 自動的に$A$6になってしまいます。 別シートに行を挿入しても参照先のセルを固定する方法を教えて下さい。

  • 別シートのセルを参照する方法について

    こんにちは シートのセルを参照する方法について、 御存知の方、教えて下さい。 現在、シートが60枚ほどあります。 「集計」というシートが参照元です。 例えば、「シートA」のZ68セルを参照する場合 「集計」シートの特定セルに='A'!Z$68(='A'!Z68)と書いていますが、 これを、='セル'!Z$68(='セル'!Z68)という風に出来るのでしょうか? つまり、「集計」シートのA列に各シート名の文字が入っていますので、 これをシート名として利用出来ないかということです。 一度や二度の変更なら何とかなりますが、 シート枚数が多く、追加変更で四苦八苦しています。 色々と調べてみましたが、それらしい情報が見つけられません。 よろしくお願いします。 Win XP Pro SP2 Office2000

  • Excel 別シートのセルを参照させる時の疑問

    エクセルであるシート(A)のセルに、別シート(B)の特定のセルを参照させたい場合、(A)のセルに= を入力し、続けて(B)の参照させたいセルを選択すると、=の後に選んだシート名+「!」+セル名が表示されます。 同じ作業をいくつか続けて行っているのですが、一カ所だけ「=」のあとのシート名が 「'」マークでくくられます。 問題なく選択したセルの参照は行えるのですが、この「'」は何を表しているのでしょうか。 分かりにくいので例を書きますと、たとえば「sheetA」の「A1」を参照させた場合、 ケースその1 : =sheetA!A1 ケースその2 : ='sheetA'!A1 このような違いがあります。 お分かりになる方がいらっしゃいましたら、恐れ入りますがよろしくお願いいたします。

  • EXCELで別ブックのセルを参照 シートを替える

    EXCEL初心者です。 毎日四苦八苦しているのですが、行き詰ってしまったのでご教授ください。 使用しているブックをA.xlsとして、 別ブックB.xlsのセル参照を、 ='Z:\[B.xls]Sheet1'!$B$1 のようにしています。 この Sheet1 の部分のシート名をA.xlsの、例えばA1に入力することで、 毎回シート名を変えられるようにしたいのですが、 ='[B.xls]( ココ )'!$B$1  ココの部分をどのようにしてよいかがわかりません。 A.xlsのパス名から書けばよいのかなと思ったのですが、 どうもうまくいきません。 何分必要にせまられてEXCEL勉強し始めたばかりです。 初歩的な質問ですが、すみません、よろしくおねがいします。

  • エクセル:別シートのセル参照でセルが結合されているときエラーになる

    エクセル:別シートのセル参照でセルが結合されているときエラーになる 別シートのセル参照でセルが結合されているとき結果がエラーで返ってきます。 エラー:='A-4'!V339:AD339 「:」以降を削除すれば正常値になります。 1000個くらい参照をするのですが、いちいち「:」以降を削除するのは手間なので ・一括で削除する方法 ・もっと簡易にできる別の方法 があれば教えてください。

  • 別シートへのセル参照について

    別シートへのセル参照についての質問です。 例えばSheet1のA1,B3,C6,G9に値が入っているとします。 その値を順にSheet2のB2,C4,D9,E17に参照したいのですが、 それぞれにセル参照しないとダメなんでしょうか? Sheet1,Sheet2に違う種類の表があって、それぞれに同じ値を入力するんですが、Sheet1に入力すれば自動的に入るようにしたいです。 実際はSheetや、値を入力するセルがかなり多いので、ひとつひとつセル参照するのが大変なので・・・よろしくお願いします。

  • エクセルで別のブックのセル参照

    Excel2000を使っています。 あるセルに、別のブックのセルの値をそのまま参照したいのですができません。解説書には [ブック名]シート名!セル番地 と書いてあってその通りにしたのですが、入力した式がそのまま表示されるだけで値が参照されません。どうすればいいのでしょうか。 あまり覗けないので回答が遅れるかもしれませんが、よろしくお願いします

  • エクセルで、別シートを参照しているセルのリストアップ

     はじめまして。検索して同種の問題が見当たらなかったため、質問させてください。  エクセルで、別シートを参照しているセルの調査と抽出を手作業で行っています。  シートの中には別シートのセルを参照・計算しているセルと、同一シート内での計算のみを行っているセルがあります。法則のあるものもないものもあり、数百行を検索と目視でまかなっております。  これが 数十ファイル×十数シート あり、手作業に時間の足りなさとつらさを感じ始めております……  エクセルのシートの中で、別シートを参照しているセルの抽出を行いたいです。  セルの色を変更し、セル名(A17 など)とセルの値(='Bシート'!A17 など)を別のファイルなどに出力したいんです。  イメージとしては、数式として「!」を検索したときの検索結果と同じだと思うんですが、検索ではセル名と値をコピーができなかったために困っています。  どなたかご教授いただければと思います。よろしくお願いします。  おまけ。  上記のリストアップ後、リンクの設定されたセルの色付けを行います。参照元のシートごとに色をかえて、見やすくまとめられたら嬉しいなぁと思います。  でもこちらは、リストアップが終わればその後に手作業でもできますので、蛇足ということで……

  • VLOOKUPとINDIRECTで別のEXCELファイルのシートを参照したい

    EXCEL2007を使用しています。 添付画像のように、例えば、B2のセルには =IFERROR(VLOOKUP(A2,INDIRECT($B$1&"!a:b"),2,FALSE),0) という関数があり、VLOOKUPとINDIRECTを使って同じEXCEL内の 別のシートを参照するようにしてあります。 ※シートをそれぞれ 0910,0911,0912という名前にして各年月毎に 商品コードと数量を入れてあります。 この商品コードと数量が入ったシートを数量.xlsxという別のEXCELファイルにして このMAINのEXCELシートにデータを持ってきたいのです。 何か方法はありますでしょうか?よろしくお願いします。

  • Excelで別sheetの参照について

    エクセルで別sheetの参照についての質問です。 画像のようにsheet1の値を参照してsheet2表示させたいのですが、これを約100件分作成したいのですがコピー&ペーストをすると参照セルがずれてしまいます。 sheet2のA1をコピーしてA4に張り付け=Sheet1!A2&Sheet1!B2&Sheet1!C2としたいのですが、A4に張り付けを行うと=Sheet1!A4&Sheet1!B4&Sheet1!C4となってしまいます。 複数行あけてペーストする場合に参照セルを1行ずつずらして参照する方法はありますでしょうか?

専門家に質問してみよう