• ベストアンサー

エクセルのセルの内容を別の場所でカテゴリーに分類する

以下の二つのケースが関数などを用いて可能であれば、その方法を教えてください。 1、Aの列に年齢を入力する場合 sheet1のA列に年齢を入力するとき、それをsheet2で「65歳以上」と「65歳未満」に分類します。 具体的には、sheet1のA1に70と入力したとき、sheet2のA1に「65歳以上」、sheet1のA2に20と入力したとき、sheet2のA2に「65歳未満」、と自動的に入力。 2、Bの列に文字を入力する場合 sheet1のB列にA、B、C、D、Eの5文字のいずれかを入力します。そのときsheet1にA、B、Cのいずれかが入力されたときは、sheet2の対応するB列に「F」と、sheet1のB列にD、Eのいずれかが入力されたときは、sheet2の対応するB列に「G」と自動的に入力。sheet1に、このA~E以外が入力された時は、sheet2の対応するB列に「その他」と入力。 以上のことが可能でしょうか。 よろしくお願いします。                

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

  • ベストアンサー
  • jindon
  • ベストアンサー率43% (50/116)
回答No.2

Sheet2のA1: =IF(COUNT(Sheet1!A1),IF(Sheet1!A1>=65,"65歳以上","65歳未満"),"") Sheet2のB1: =IF(COUNTA(Sheet1!B1),IF(NOT(ISNA(MATCH(Sheet1!B1,{"a","b","c"},0))),"A",IF(NOT(ISNA(MATCH(Sheet1!B1,{"d","e"},0))),"G","その他")),"") として、両セルを必要分下方コピーでは?

blackleon
質問者

お礼

完璧です。式の意味がよくわからないので、勉強します。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

IF関数での解答が出るのではと思ったがでていますが、 これらは1,2とも統一的にVLOOKUP関数で出来ます。 ただ1はTRUE型、2はFALSE型を使います。 1、Sheet1のA列に年令を入れる。 Sheet1のD1:E2に 0 65才未満 65 66才以上 を作る。 Sheet2のA1に=VLOOKUP(Sheet1!A1,Sheet1!$D$1:$E$2,2,TRUE)を入れる。 A2以下に式を複写する。 Sheet2の式複写で、Sheet1の対応するセルに年令入力がないと、65才未満の表示が出てしまうが =IF(Sheet1!A1="","",VLOOKUP(Sheet1!A1,Sheet1!$D$1:$E$2,2,TRUE)) にすれば防げる。 2.A列にA-Fまでを入れるとする。 D1:E6に A F B F C F D G E G F その他 を作る。 Sheet2のA1に =IF(Sheet1!A1="","",VLOOKUP(Sheet1!A1,Sheet1!$D$1:$E$6,2,FALSE)) と入れて下方向へ式を複写する。 F以下が沢山あるときは、表をそれだけ増やすか、またはIF文でFより大であれば「その他」を入れる式にする。 =IF(Sheet1!A1="","",IF(Sheet1!A1>="F","その他",VLOOKUP(Sheet1!A1,Sheet1!$D$1:$E$6,2,FALSE)))

blackleon
質問者

お礼

ありがとうございました。 いろいろな方法があるものだと参考になりました。

全文を見る
すると、全ての回答が全文表示されます。
  • fukkyse
  • ベストアンサー率32% (130/402)
回答No.3

1) =IF(Sheet1!A1<65,"65歳未満","65歳以上") 2) =IF(OR(Sheet1!B1="D",Sheet1!B1="E",),"G",IF(OR(Sheet1!B1="A",Sheet1!B1="B",Sheet1!B1="C"),"F","その他"))

blackleon
質問者

お礼

ご回答ありがとうございました。 ただこの式だと、空白のセルでもsheet2に入力されてしまうようです。

全文を見る
すると、全ての回答が全文表示されます。
  • dacapo
  • ベストアンサー率24% (9/37)
回答No.1

可能です。 if関数を使えば出来ると思いますが… 例えばsheet1のB列にAが入っている場合は if(sheet1!b1=A,"G","") こんな感じではどうでしょう? sheet1!b1にAが入っている時にGを表示させそれ以外は空白にする。と言う意味です。これをsheet2の対応するB列に入れればOKです。複数の場合は if(sheet1!b1=A,"G",if(sheet1!b1=B,"D","")) こんな感じで増やしていけばOKです。

blackleon
質問者

お礼

ご回答ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルVBA:表の内容を分類別に振り分けたい

    VBA初心者です。 入門書などで勉強中ですが、手に負えません。 助けてください。   A     B   C   名前   体重 分類 1ニワトリ  ○  鳥 2ヒラメ   ■  魚 3スズメ   △  鳥 4インコ   ▼  鳥 5タイ    ◇  魚 6イワシ   ◆  魚 というような入力シートの表があります。(下にたくさん続きます) このデータを分類別にしてワークシートを作成しています。 そこで、次のようなVBAを書きたいのです。 VBAを実行すると、 別シートに分類別に入力表のデータが振り分けられて、 魚がA,B列   A     B  名前   体重 1ヒラメ   ■ 2タイ    ◇ 3イワシ   ◆ 鳥がD,E列   D     E  名前   体重 1ニワトリ  ○ 2スズメ   △ 3インコ   ▼ と入力シートに入力されたデータが振り分けられるものです。 どうか、よろしくご指導お願いいたします。

  • 入力リストから分類別で自動転記

    分類 名称 ・・ A ●● B × A △ C ■ ・・ ・・ 上記入力シート1の分類ABCDEを別シート2で A  B  C  D  E ●●  ×   ■ △ ・・ と自動で振り分けする関数を探しています。 シート1は随時追加されるので自動で振り分けたいです。 マクロでもOK(最終登録ボタンを設定すれば良いので) 色々と調べましたが、どれも不具合が生じて先に進みません。 ご教授いただけますようよろしくお願いします。

  • Excelのセルにおける変則的なコピー

    VBAを使わずにこんなことができますか? いい方法があれば教えて下さい。 言葉でしか伝えられませんが、これでやりたいことがわかっていただけますでしょうか? 1.[Sheet1]のA列~E列に数値が入力されているとします。 2.これを[Sheet2]に1行を2行に分割しながら貼り付けたいんです。 ・[Sheet1]A1~C1を[Sheet2]A1~C1へ、[Sheet1]D1~E1を[Sheet2]B2~C2へ。 ・[Sheet1]A2~C2を[Sheet2]A3~C3へ、[Sheet1]D2~E2を[Sheet2]D4~C4へ。 ・[Sheet1]A3~C3を[Sheet2]A5~C5へ、[Sheet1]D3~E3を[Sheet2]B6~C6へ。 ・ ・ ・ イメージはこんな感じです。 実際にはA列からDC列まで100行程あるものを、4行ずつに分割したいんです。 2列に分ける方法の応用でできると思っているのですが、いかがでしょうか? どうかよろしくお願いします。

  • 《エクセル》リストから同じ分類のデータのみコピーする

    いつもお世話になります。 別のシートに、下記の形のリストがあります。  列A   列B   列C   列D (商品名)(大分類)(中分類)(売上金額)  商品A   あ    A    1000  商品B   あ    B    900  商品C   い    A    800  商品D   あ    A    700  商品E   あ    C    600  商品F   あ    F    500 マクロを組んで、このリストの大分類が"あ"、中分類が"A"に該当する商品名と売上金額のみをコピーして、今開いているシートの列A・列Bに連続したデータとして貼り付けたいのですが、うまくいきません。 ご教授宜しくお願い致します。

  • エクセルのセルを参照して別シートに張り付ける

    こんにちは。 エクセルのsheet1とsheet2があり、sheet1のセルに入力されている文字や数値をsheet2にコピーしたいと思っています。ただし、コピー先のsheet2のセルの値は、sheet1を参照するだけでなく文字や数値として表示できないかと悩んでいます。 図で説明すると  (sheet1)                →           (sheet2)   A    B    C     D           A     B    C     D 1あああ  10  いいい  えおう        1いいい  えおう  10    あああ 2あああ  10  いいい  かけこ       2いいい  かけこ  10    あああ 3あああ  10  いいい  みまつ       3いいい  みまつ  10    あああ  4あああ  10  いいい  さぐも        4いいい   さぐも   10    あああ また、上記のようにsheet1とsheet2の列は同じ場所ではありません。 このような作業を1回で行うことはできるのでしょうか? よろしくお願いします。

  • エクセルでセル内の文字列を検索して組み合わせごとに分類する

    Excel2003について質問致します。 A列にはそれぞれ[a, b, c, ...]とカンマとスペースで分けられた文字列が複数個格納されています。 B列には演算式によって、A列に"a"と"b"が含まれていれば"1"を返し、"c"と"d"と"e"が含まれていれば"2"を返し…全てに当てはまらない場合は"99"を返す、という条件で値を入れたいと考えております。 組み合わせの数は9つあり、if文で分類しようと思いましたがネスト制限によりエラーが出ました。 良い案をお持ちでしたら是非ご教授頂ければと思います。

  • EXCEL参照列の数値によって表示列の表示内容が自動表示されるには

    B列の数値によってA列にAからDを自動表示させたい: A列(文字)    B列 A        21以上30未満 B        15以上20以下 C        10以上14以下 D        10未満 ※A列に何らかの関数を設定する事で可能ですか? 

  • 住所録から特定住所を別シートに抽出分類できるか?

    エクセル2010で作成した住所録にある特定の町名をグルーピングして別のシートに分類したいのです。シート1の住所録本体のA列は氏名、B列は町名と丁目(〇〇町◆丁目)、C列は番地を入力します。その他の列にもいくつか入力項目があります。やりたいことは、B列の町名と丁目を入力すると自動的に他のシートにグルーピングして分類できるようにしたいのです。分類の際、次のような場合があります。たとえば、A町1丁目とB町2丁目が同じグループ、つまり同じシートに分類する必要があります。また、単独でC町3丁目は一つのグループとして分類する場合ももちろんあります。マクロ等、エクセルの専門的な知識はもちあわせていません。関数の組み合わせでできそうな気がしていますが、なにぶん技量不足のためわかりません。どなたかご教授ねがいます。宜しくお願いします。

  • Excelの2つのシートで別のセルに同じ内容を表示する方法

    すみません。再度質問なのですが2つのシートの別(シート1のA1、シート2のB2等)のセルに 同じ内容をどちらのシートからの入力でも表示できる方法で、 その設定が数パターン(シート1のA1、シート2のB2を1つ。シート1のD4、シート2のE5等)作りたいのですが どのような設定を行ったらよろしいのでしょうか? 入力パターン1 ひな型ファイルを開きシート1のA1に「100」と入力したときに、シート2のB2に「100」と入力出来る様にする。 シート2のE5に「200」と入力したときに、シート1のD4に「200」と入力できるようにする。 入力パターン2 ひな型ファイルを開きシート2のB2に「100」と入力したときに、シート1のA1に「100」と入力出来る様にする。 シート1のD4に「200」と入力したときに、シート2のE5に「200」と入力できるようにする。 かなり複雑でわかりにくいとは思いますがよろしくお願いいたします。

  • Excelで飛び飛びのセル(列)を参照したいのですが…その2

     ある「sheet1」で、G1="A",H1="B",I1="C",J1="D",K1="E",L1="F",M1="G",N1="H",O1="I",P1="J",Q1="K",・・というように文字が入力されているとすると、5列飛びの値A,F,K・・・(G1,L1,Q1・・・)が欲しいのです。そして、その値が「sheet2」に、C5=A,D5=F,E5=K,F5=P・・・となるようにしたいのです。ただ数値が5ずつ増加するのではなく、そのセルに入力されている文字列を参照したいのです。  それをまた、「sheet1」の、G2="A",H2="B",I2="C",J2="D"・・・の値でも同じ事をしたいのですが・・・。  よろしくお願いします。

専門家に質問してみよう