すべてのカテゴリ » インターネット・パソコン » ソフトウェア » 使い方・不具合

質問

終了

エクセルについてなんですが

コード表で 1 飴
      2 ガム
      3 ラムネ

と作って

1を 入力したら 飴と 出てくるようにするには
どのような 手順で やったらよいのですか??

  • 質問者:初心者ママ
  • 質問日時:2008-06-25 08:03:09
  • 0

初心者ママさんへ。
集計表のようなものを作りたいのでしょうか?もしくは名簿とか。
この方法を実施するために、表には「コード番号」(1~3)を入れるための列、その隣にお菓子の種類を入れるための列を作っておいてください。

作り方ですが、まずは、別表を作ります。これはおおもとの表とは別物です。分かりやすいようにおおもとの表の近くに作るといいと思います。
「1 飴、2 ガム、3 ラムネ」と入力します。

次に、コード番号の隣、「お菓子の種類」の部分に数式を入れます。
慣れるまでは何回もやってみてください。
HLOOKUP(エイチルックアップ)という関数を使います。
「=HLOOKUP(コード番号を入れたセル番地をクリック,別表の範囲をドラッグ,表示をさせたい文字が別表の何行目にあるか数字を入力,0)」と入れます。

例えば、A2にコード番号、別表がH2からJ3に作られていて、表示させたい文字が別表の2行目にある場合
「HLOOKUP(A2,$H$2:$J$3,2,0)」と入力します。もちろんクリックやドラッグを使って構いません。

ちなみに範囲指定のところにある$マークは「絶対参照」のために用います。
数式をドラッグでコピーしても範囲指定をした場所はずれませんよ、という意味です。


コード番号が空欄の時は、エラーとなりますが、それを回避する方法もあります。
ここで書き込むと長くなるので、もし必要の際はお知らせ下さい。
また、分かりづらい場合も併せてお知らせ下さい。


お役に立てば幸いです。
表作り頑張ってくださいね。

  • 回答者:あさりん (質問から54分後)
  • 2
この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。
お礼コメント

有難うございました。マークの説明など 分かりやすかったです。
また チャレンジして 分からない時は よろしくおねがいします。

並び替え:

下記も参考になります。
VLOOKUP http://office.microsoft.com/ja-jp/excel/HP052093351041.aspx

  • 回答者:turuzou (質問から1日後)
  • 0
この回答の満足度
  
とても参考になり、非常に満足しました。回答ありがとうございました。

二つのセルを利用すれば出来ますよ。
例えばA列に1,2,3を入れるようにして
B列に【=IF(A★=1,"飴",IF(A★=2,"ガム",IF(A★=3,"ラムネ","")))】と数式を入力すれば出来ます。(★には行番号を入力)
色々と難しいと思いますが頑張ってみてください。

  • 回答者:ショっと (質問から3時間後)
  • 0
この回答の満足度
  
参考になり、満足しました。回答ありがとうございました。

いろんな方法があると思います

例えば
セルAに1と入力しセルBに飴と表示させるには、VLOOKUPという関数があります
コード表は
 X  Y
 1  飴
 2  ガム
 3  ラムネ

Bの式は VLOOKUP(A1,$X$1:$Y$3,2)

  • 回答者:えくせるせる (質問から59分後)
  • 2
この回答の満足度
  
参考になり、満足しました。回答ありがとうございました。

1,飴,
2,ガム,
3,ラムネ,
,,
,,
4,=MATCH(A6,A1:A3,0),=IF(ISERROR(B6),"",OFFSET(B1,B6-1,0)),

上の部分をテキストエディタに貼り付けてtest.csvで保存してからExcelで開いてみてください。A6のセル(数値が4)の部分に1を入れるとC6に飴が出て来ます。

B6セルではMatch関数で一致した行の位置を検出して、それを利用してC6セルにエラーの場合は空白、そうで無い場合は拾ってきた行の位置を使ってテーブルの相対位置から表示するようにしています。もしエラー処理が不要ならB6セルに

=OFFSET(B1,MATCH(A6,A1:A3,0)-1,0))

と入れれば、A6に番号を入れればB6セルに一発で検索結果が出ます。Match以外にも入力した数値から計算して関連する別のセル内容を引っ張ってくる事も出来ますし、応用は幾らでも利きますね。入力が文字(全角文字)なら数値に直してからと言う手も有りますし、文字列を直接比較する方法も有り、やり方は沢山、選り取りです。

Matchとoffsetを組み合わせたVlookupと言う関数も使えます。が、処理が多くなってくるとCPUパワーを喰うようになりますので、配列の検索は少ない方が将来的には良いでしょう。

頑張ってください。

回答者:水辺 遊 (2008年06月25日 08時58分)

********

追加のオマケ。上から番号が決まっている場合は時間とCPU負荷を要する検索系関数を使わずに済む方法もあります。

B6セルに
=CHOOSE(A6,B1,B2,B3)
と入力。これでA6セルに1を入れればB6セルに飴とか出てきます。

この方が計算速度は早いですが一々セルを指定しなければならず手間が若干掛かります。最新のExcelならば254個まで対応しています。

この回答の満足度
  
参考になり、満足しました。回答ありがとうございました。

関連する質問・相談

Sooda!からのお知らせ

一覧を見る