質問: エクセル:特定セル内に特定文字列が入っているとき、別シートの特定セルから値を返したい。 e13にallowanceという文字が入っているとき、c13に「隣のシートのl22に入っている日当額」が入ってくるようにしたいです。 以下のようにやっていますがうまくいきません。 =if((find("allowance",e7))=true," ","l22") l22を表示させるためには、vlookup組み合わせでしょうか? ご教示のほど、よろしくお願いいたします。
回答: e13にallowanceという文字が入っているとき というのは、e13がallowanceの場合だけなのか、 aallowanceやallowanceaであってもかまわないのか、 どちらを想定しているのでしょうか? findを使っているので、後者の気もしますが、 理解できていないようなので、前者のつもりで間違えて使っているだけの気もします。 (そしてfindで指定しているセルがe13ではなくe7になっていますが、e13が正しいものと仮定します) 前者であるならば、 c13=if(e13="allowance",隣のシート!l22,"") とすれば、e13がallowanceであった場合に、「隣のシート」という名前のシートのl22のデータを表示させます。 vlookupを使う可能性とすれば、日当額が表になっていて、該当する日当額を別のセルのデータから自動選択させる場合です。 今回l22に入っていると決まっているのであれば、vlookupは不要です。 「隣のシート」という部分には具体的なシート名を入れてくださいね。 後者であるならば、 c13=if(countif(e13:e13,"*allowance*")=1,隣のシート!l22,"") e13~e13の範囲(というか1つのセルですが)にallowanceを含むセルが1つであった場合に、 「隣のシート」というシートのl22のデータを、そうでない場合は空白を、表示するという式です。