[2540] 以前聞いたことがあるんですがよろしくお願いします 投稿者:マムル 投稿日:01/01/23(Tue) 08:46
すみません 以前一度聞いたことがあるんですがもう一度教えてください
例)もしセルSheet!A1に=Vlookup(B1、Sheet2!A1:B2,1,1)
という式がはいっているとします。
Sheet2にはデータが入っています。その時に、関数の部分のSheet2を簡単に全体的に自分で入れ替える方法を教えてください。
例えばセルの何処かにSheet名を入力すると関数の中も変わるようなものがいいんですがご迷惑をおかけして申し訳ありませんよろしくお願いします。

[2552] Re: 以前聞いたことがあるんですがよろしくお願いします 投稿者:シニア(69) 投稿日:01/01/23(Tue) 16:01
> すみません 以前一度聞いたことがあるんですがもう一度教えてください
> 例)もしセルSheet!A1に=Vlookup(B1、Sheet2!A1:B2,1,1)
> という式がはいっているとします。
> Sheet2にはデータが入っています。その時に、関数の部分のSheet2を簡単に全体的に自分で入れ替える方法を教えてください。
> 例えばセルの何処かにSheet名を入力すると関数の中も変わるようなものがいいんですがご迷惑をおかけして申し訳ありませんよろしくお願いします。

【過去ログ参照】
[2323] Re: できるかな?...INDIRECTで - 投稿者:シニア(69) 投稿日:01/01/17(Wed) 20:58
仮に C1 にシート名を入力して A1 の式にシート名を反映させるには
=IF(C1="","C1にシート名を入れなさい",VLOOKUP(B1,INDIRECT(C1&"!A1:B2"),2,FALSE))
 とします。

[2561] Re^2: 以前聞いたことがあるんですがよろしくお願いします 投稿者:マムル 投稿日:01/01/23(Tue) 18:19
もうちょっと詳しくおしえていただけますか?
お願いします

[2562] Re^3: 以前聞いたことがあるんですがよろしくお願いします 投稿者:シニア(69) 投稿日:01/01/23(Tue) 19:26
【過去ログ14】にマムルさんの同じ投稿があります。確かめて下さい。
[2324] Re^2: できるかな? 投稿者:マムル 投稿日:01/01/17(Wed) 21:08
INDIRECTの使い方がイマイチわからないんですが?くわしく教えて
[2327] Re^3: INDIRECTって 投稿者:シニア(69) 投稿日:01/01/17(Wed) 21:44

[2578] Re^4: 以前聞いたことがあるんですがよろしくお願いします 投稿者:マムル 投稿日:01/01/24(Wed) 09:08
> 【過去ログ14】にマムルさんの同じ投稿があります。確かめて下さい。
> [2324] Re^2: できるかな? 投稿者:マムル 投稿日:01/01/17(Wed) 21:08
> INDIRECTの使い方がイマイチわからないんですが?くわしく教えて
> [2327] Re^3: INDIRECTって 投稿者:シニア(69) 投稿日:01/01/17(Wed) 21:44
やはりどうもよくわかりません
教えて頂いた通りやってみたんですが#R??ってのが出てしまいますできればもうチョットくわしく教えていただけないでしょうか?

[2593] Re^5: 以前聞いたことがあるんですがよろしくお願いします 投稿者:シニア(69) 投稿日:01/01/24(Wed) 12:45
> やはりどうもよくわかりません
> 教えて頂いた通りやってみたんですが#R??ってのが出てしまいますできればもうチョットくわしく教えていただけないでしょうか?

関数式内のシート名を A1 に入力して、関数式を有効にするには?
【実験】
SHEET2に表[A1] 1 [A2] 2 [A3] 3 [B1]みかん [B2]りんご [B3]バナナ があり
SHEET1 [B2] 2 [C2]=VLOOKUP(B2,SHEET2!A1:B3,2,FALSE)⇒りんご
とすれば、SHEET2!A1:B3 と直接表の範囲を指定しています。
SHEET1 [A1] SHEET2 と入力して間接的に範囲を指定するのに、文字通りINDIRECT【間接に】の関数を用います。
 [C2]=VLOOKUP(B2,INDIRECT(A1&"!A1:B3"),2,FALSE)とすると、A1のシート名のA1:B3 の範囲を指定できます。A1にシート名が未入力であれば#REF!のエラー値が返されます。IF文を併用して次のように式を変更します。
=IF(A1="","A1にシート名を入れなさい",VLOOKUP(B2,INDIRECT(A1&"!A1:B3"),2,FALSE))
 [B2]が未入力または未定値であれば#N/Aのエラー値が返されます。
【お勧め】
SHEET2の表に範囲名を付けて、A1にその範囲名で間接的に範囲を指定すればより使い易くなります。
 SHEET2の範囲を選択してメニューバーの[挿入][名前][定義]でDATA1としたとします。
SHEET1 [A1]DATA1 [B1]表の列番号 を入力します。
 [C2]=IF(A1="","A1にシート名を入れなさい",VLOOKUP(B2,INDIRECT(DATA1),$B$1,FALSE))
とすれば、[A1][B1][B2]が変数になりますから、データ範囲、列番号や検索値を入れ替えて試してみて下さい。
【追加案内】[A1][B1][B2]の変数をキー入力でなく簡易リストで選択できるようにすれば、更に検索が楽になります。
 この方法でやれば複数の表がどのシートのどの場所にあっても範囲名で呼び出すことが出来ます。
 最初の例ではSHEETの決まった範囲に表を作る必要があります。
お分かり頂けたでしょうか?
 

[2630] Re^6: 以前聞いたことがあるんですがよろしくお願いします 投稿者:マムル 投稿日:01/01/25(Thu) 18:50
細かく説明して頂いてありがとうございました
また何かわからないことがありましたらよろしくお願いします

[2629] 関数を見せたくない 投稿者:nadesiko 投稿日:01/01/25(Thu) 18:42
初めて質問させていただきます。
会社で給料計算の表を作っているのですが、
それをお客さんの所へ持っていくそうなんです。
数式バーにでる関数を相手に見せないようにするには
どうすればいいのでしょうか。

フリーのソフトをダウンロウドしてくると
関数や計算式が分からないように空白になっている
ソフトがあるのですが、どうすればそんなふうにできるのか
教えてください。


2021/12/08:更新 訪問者: カウンタ Valid HTML 4.01 Transitional