OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

Excelで、場合に応じた処理をする関数ありませんか?

  • すぐに回答を!
  • 質問No.116211
  • 閲覧数34
  • ありがとう数3
  • 気になる数0
  • 回答数6
  • コメント数0

お礼率 35% (47/134)

本日2回目の質問で恐縮です。

Excelで、セルA1に「条件」が入力されているとき(条件は日本語の単語)、
その条件に応じて、セルB1の値を変えたいのですが、IF文だと条件が多いとき
だらだら長くなってしまいますよね。

例)A1=車・・・B1=200万円、A1=家・・・B1=2,000万円 といった感じ

他に何かいい方法はないでしょうか?
教えてください。
通報する
  • 回答数6
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.2
レベル11

ベストアンサー率 61% (115/186)

本日2回目のomusupaです。(なんか私って暇人?)
例のような感じで、IF関数では長くなってしまう場合は
「VLOOKUP」関数を使われてはどうでしょうか?
別のシート(又は同じシートの表に影響されない個所)に
   D         E
1 車   200万円
2 家   2000万円


と入力し、
=vlookup(a1,D1:E2,2,0)
とB1に入力してはどうでしょうか?
お礼コメント
8boy

お礼率 35% (47/134)

ありがとうございます。
ただ、私の希望としては、IF文に似た形で、もっと省略出来る関数があるといいのですが。
投稿日時 - 2001-08-09 13:40:06
-PR-
-PR-

その他の回答 (全5件)

  • 回答No.1
レベル8

ベストアンサー率 29% (12/41)

目的とされていることがちょっとわからないので的を射ているかはわかりませんが「LOOKUP」関数はいかがでしょうか? 別シートにデータベース的な表を作っておいて、入力された文字や数字に対応した値や文字列を表示させることができます。 関数の使い方を書くといっぱいになってしまうので、EXCELの関数ヘルプを見て下さい。 ...続きを読む
目的とされていることがちょっとわからないので的を射ているかはわかりませんが「LOOKUP」関数はいかがでしょうか?
別シートにデータベース的な表を作っておいて、入力された文字や数字に対応した値や文字列を表示させることができます。
関数の使い方を書くといっぱいになってしまうので、EXCELの関数ヘルプを見て下さい。
お礼コメント
8boy

お礼率 35% (47/134)

ありがとうございます。
ただ、私の希望としては、IF文に似た形で、もっと省略出来る関数があるといいのですが。
投稿日時 - 2001-08-09 13:38:52

  • 回答No.3
レベル8

ベストアンサー率 40% (18/44)

一回目の内容は見ていません。あしからず。 さて、やりたいことは大体分かりますが、それを一つのセル内で処理させるのは非常に辛いものがあります。(等幅フォントでご覧下さい)   A B C D 1 家 ○ 車 200 2     家 2000 3     庭 100 ○ = VLOOKUP(A1, $C$1:$D$3, 2, FALSE)と入力 別のセルにデータベースみたいなも ...続きを読む
一回目の内容は見ていません。あしからず。

さて、やりたいことは大体分かりますが、それを一つのセル内で処理させるのは非常に辛いものがあります。(等幅フォントでご覧下さい)
  A B C D
1 家 ○ 車 200
2     家 2000
3     庭 100

○ = VLOOKUP(A1, $C$1:$D$3, 2, FALSE)と入力

別のセルにデータベースみたいなものを作成し、
B1セルには「VLOOKUP関数」を使用し、作成したデータベースみたいなものから抽出させるのがベストと思われます。
お礼コメント
8boy

お礼率 35% (47/134)

ありがとうございます。
ただ、私の希望としては、IF文に似た形で、もっと省略出来る関数があるといいのですが。
投稿日時 - 2001-08-09 13:39:52
  • 回答No.4
レベル11

ベストアンサー率 33% (135/409)

vlookup関数を使えばよいかとおもいます。 例: E  F 1車 200万円 2家 2000万円 このような相対表を作っておきます A  B 1車 =IF(A1="","",(VLOOKUP(A1,$E$1:$F$2,2,1))) 2家 =IF(A2="","",(VLOOKUP(A1,$E$ ...続きを読む
vlookup関数を使えばよいかとおもいます。

例:
E  F
1車 200万円
2家 2000万円
このような相対表を作っておきます


A  B
1車 =IF(A1="","",(VLOOKUP(A1,$E$1:$F$2,2,1)))
2家 =IF(A2="","",(VLOOKUP(A1,$E$1:$F$2,2,1)))

これで自動的にA1に車と入ればB1に200万円と表示されます。
A1="","",←この部分は何も値が入っていないときにエラーが出ないようにしているものです。

言葉で説明するとA1に何も入っていないときは何も表示しない。そうでなければ相対表から値を抜き出して表示する。という感じです。
あとはA列を入力しやすいようにしてあげればいいかもとおもいます。
  • 回答No.5
レベル8

ベストアンサー率 40% (18/44)

「IF文に似た形」とありますが、「他に何かいい方法はないでしょうか? 」ということなので「VLOOKUP関数」を使用しました。 また、IF文なら3つ程度の分岐がせいぜいだと思います。 それ以上になると真の場合/偽の場合の条件文を書くにあたって、頭が混乱してくることになりますよ。 条件と真の場合と偽の場合、それぞれを「,(カンマ)」で区切っていくわけですから・・・・ 省略するなら「VLOOK ...続きを読む
「IF文に似た形」とありますが、「他に何かいい方法はないでしょうか? 」ということなので「VLOOKUP関数」を使用しました。

また、IF文なら3つ程度の分岐がせいぜいだと思います。
それ以上になると真の場合/偽の場合の条件文を書くにあたって、頭が混乱してくることになりますよ。
条件と真の場合と偽の場合、それぞれを「,(カンマ)」で区切っていくわけですから・・・・

省略するなら「VLOOKUP」以外は考えられません。
  • 回答No.6
レベル11

ベストアンサー率 61% (115/186)

再びomusupaです。 わたしも、kenzo-2000さんと同意見です。 関数はネストといって関数の中には、7レベルまでしか、関数は使えません。 つまり、 車、家、とその項目が、8個以下であれば、IFでやられると良いと思います。 しかし、それ以上多くなる場合は、やっぱり、別に表を作って、「VLOOKUP」が 一番良いと思います。
再びomusupaです。
わたしも、kenzo-2000さんと同意見です。
関数はネストといって関数の中には、7レベルまでしか、関数は使えません。
つまり、
車、家、とその項目が、8個以下であれば、IFでやられると良いと思います。
しかし、それ以上多くなる場合は、やっぱり、別に表を作って、「VLOOKUP」が
一番良いと思います。
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ