- ベストアンサー
文字を入力したら数値が自動入力!(エクセル)
いつもお世話になっています。 例えばA列の1行目に「りんご」と入力(若しくはリストの中から選択)すれば、B列の1行目には自動的に「5」と数値が入力されるという仕組みを教えて頂ければと思います。 因みにA列1行目に入力する文字(上記の例では「りんご」)が仮にA列の1行目以外に入力しても、それに対応し、数値を出せるようにしたいのです。(例:A列5行目に「りんご」を入力すると、B列5行目に数値の「5」が表示) 以上の説明で分かりにくいかもしれませんが、宜しくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは。 1.「りんご」と「5」の関係を表す対応表が存在する場合 B列に IF 関数 と Vlookup 関数を入れ子で記述 2.1.対応表が無い場合 B列に IF 関数を記述 3.B列に数式を入力せず空欄のままにしておきたい場合 マクロを記述 上記はアバウトですが、詳細がわかれば具体的な回答が可能と思います。
その他の回答 (4)
- sirappe
- ベストアンサー率31% (5/16)
たぶんVLOOKUP関数でご満足されるのではないでしょうか? ・まず読み替えする対応表を(例えば)E1からF4に作ります。 ex. E列 F列 行1 品名 品番 2 りんご 5 3 いちご 3 4 みかん 2 ・(仮に)A1~A10を「品名入力」欄、B1~B10が「答え」の欄とする。 ・次に「答え」のセル B1 にVLOOKUP関数を入れる。 たとえば、 =VLOOKUP(A1,$E$1:$F$4,2,FALSE) *第2引数で指定する対応表は、コピーでずれないように$を付け絶対参照にしておきます。 ・これで、あとは セルB1 の式を B10 まで、オートフィルでコピーします。 *このとき#N/Aのエラー表示が出ますが、これは品名欄がまだ空白で該当が無いからです。 ・これで出来あがりです。あとは、A1からA10のセルに品名を入力して下さい。B列に対応する品番が自動表示されます。 ※これ以上は、関数の説明書を読んで下さい。
お礼
お礼が遅くなりました。 皆様の回答を参考に対応表作成後、「IF 関数 と Vlookup 関数」の組み合わせで、解決しました。 この度は有難うございました。
- 245689731
- ベストアンサー率22% (76/341)
NO2さんも書かれていますがもう少し具体的なデータの提示がないと とてつもない時間がかかります。 りんごなら5 なしなら 3 そのほかに対応する「モノ」はないのですか。 対応する名称数及び 横に出てくる数字(数値)がいくつあるのか? 完全に「りんごなら5」だけでよいのかなど? たとえば「りんご」が商品名で対応する数が変化することはないのか
お礼
お礼が遅くなりました。 私の説明不足でご迷惑をお掛けしましたが、皆様の回答を参考に対応表作成後、「IF 関数 と Vlookup 関数」の組み合わせで、解決しました。 この度は有難うございました。
- imogasi
- ベストアンサー率27% (4737/17070)
(1)先日も入力規則の選択項目の表示文字列と違う文字列・数字をセルにセットしたいという質問があり、VBAで応えましたが、VBAがわからないという方でした。 (2)リンゴに代表される品物などの種類が2種類ぐらい少ないとき、表示形式でそうみせることは可能ですが、本件は値をセットしたいのだと思いますので、はずれます。 (3)VBAでA列や範囲に限定して、リンゴや数十までの文字列を対応する数字に変換をして、 対応数字をセットすることはできます。しかし、VBAは判らないという方がいますのでどうしたものか。 (4)A列は入力規則(リスト)を使って入力し、別列(B列)にVLOOKUP関数で、対応する数字を出し、ある時期に、B列の値を、A列に戻す(値貼り付け)というのが一番自然ですが、A列に入れた即座に、A列がB列の値になるわけではないので、忘れたりすれば、食い違います。 そういうことで、良い方法はないようです。
お礼
お礼が遅くなりました。 対応表作成後、「IF 関数 と Vlookup 関数」の組み合わせで、解決しました。 この度は有難うございました。
- 245689731
- ベストアンサー率22% (76/341)
=IF(A1="りんご",5,"") 只この回答では「りんご=5」しか出来ません。 実際問題としてVLOOKUPなどなど使ってもう少し融通が利く方が いいかとは思います
お礼
ご回答、ありがとうございます。 確かに教えて頂いた方法では、「りんご=5」のみですよね。 これを「りんご」と入力したなら「5」が、他の単語=例えば「なし」を入力したら「3」等と表示させたいのです。 簡単そうで難しいので困っています。
お礼
お礼が遅くなりました。 対応表作成後、「IF 関数 と Vlookup 関数」の組み合わせで、解決しました。 この度は有難うございました。