dポイントプレゼントキャンペーン実施中!

エクセルXPを使用しています。
よろしくお願いいたします。
シート名及びセル番地を指定する場合、シート名の部分に引数(別途作成したシート名の一覧表からの値・・)を入れる方法をご教授願えませんでしょうか?
質問の内容がわかりづらいかもしれませんが・・・

A 回答 (3件)

例えば


●Sheet1のB1にABCと入っているとします。
Sheet2のC1にsheet1!B1と文字列をいれます。
Sheet2のC3に=INDIRECT(C1)を入れると
Sheet2のC3はABCになります。
●Sheet3のB1にXYZと入っているとします。
Sheet名の部分だけを相対化したければ
Sheet2のC1にsheet3といれ
Sheet2のC3に=INDIRECT(c1&"!b1")
と入れるとSheet3のB1の値XYZを持ってきます。
maruru01さんの既回答と「’」の有り無しが違いますが、深い意味があるのかも知れませんが、無しでも出来るようです。
    • good
    • 0
この回答へのお礼

ありがとうございます。お答えいただいた式の中のC1の部分に入れ子みたいな形で、シート名一覧のある別なシート名とセル番地を入れましたら、やりたい事が可能となりました。皆様のご回答のお陰で使うべき関数が判明しとても助かりました。

お礼日時:2004/05/21 21:43

>セルの値を新規シートのセルにコピーしようとしているのですが、


コピーですか?
ということはVBAでの処理なんですか?
通常の関数ではコピーは当然出来ませんが。

ちなみに、どこかに、

=INDIRECT("'" & Sheet2!A1 & "'!A1")

としたら、[花子]というシートのA1の値が表示されますか?

この回答への補足

ありがとうございます。
下記のようにした所、シート2にあるセルA2の値をシート名として、そのシートにあるA1の値を持ってくる事が出来、それをずらずらと下へドラッグして楽をする事が出来ました。
ヒントを頂いてありがとうございました。
=INDIRECT(Sheet2!A2&"!A1")

補足日時:2004/05/21 14:06
    • good
    • 0

こんにちは。

maruru01です。

INDIRECT関数だと思います。
例えば、A1にシート名(「Sheet1」など)、B1にセル番地(「E10」など)を入力する場合、

=INDIRECT("'" & A1 & "'!" & B1)

とすると、実際にSheet1のE10を参照します。

この回答への補足

ありがとうございます。早速やってみたのですが、
やりかたを間違えているのか、うまくいきません。
何回か、試してみますが、まずは、お礼申し上げます。
たとえばsheet2のセルA1の値(例:花子)を参照先シート名として、その参照先のシートの特定のセルの値を新規シートのセルにコピーしようとしているのですが、多分なにか違うのでしょうか・・・
もう少しお付き合いくださいませ。

補足日時:2004/05/21 12:41
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A