Excelでの条件分岐の方法について

このQ&Aのポイント
  • Excelでデータの条件分岐を自動化する方法について説明します。
  • データを基準値で分割し、条件に応じて値を設定する関数を利用することができます。
  • データの並び替えや手作業の代わりに、Excelの関数を使って大量のデータを処理できます。
回答を見る
  • ベストアンサー

EXCELでの条件分岐の方法について

例えば 1  13 2  14 3  12 4  16 5  17 6  12 7  11 8  14 のようなデータがあったとして、 1  13 1 2  14 0 3  12 1 4  16 0 5  17 0 6  12 1 7  11 1 8  14 0 のように13と14を境に区別を行い、13以下を1、14以上を0としたいのですがどのようにしたら自動的に行うことができるのでしょうか? 並び変えてから行うこととかならできるのですが、何か関数などを使って自動的に大量のデータを処理する方法を知っている方がいましたら教えていただけないでしょうか? 回答よろしくお願いします。

  • inmo87
  • お礼率29% (170/577)

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

  • ベストアンサー
  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

A1 B1 1 13 2 14 と入っているとすると C1 = IF(B1<=13,1,0) C2 = IF(B2<=13,1,0) であとはオートフィルで埋めればいいいと思うけど

その他の回答 (2)

noname#152316
noname#152316
回答No.3

 すでに回答が沢山出ていますが、    あえて、   = IF(A1>=13,0,1)      を B1 以下のセルにコピーしはいかがですか?

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

A列に12や13や14が入ってるとすると B1に =(A1<=13)*1 と記入して下向けにコピーして埋めます。

関連するQ&A

  • エクセルの関数による条件分岐について

    単刀直入で申し訳ないですが、 Sheet1に下記の表を作成し、 青   100   B 青   300   B3 赤   200   A2 白   400   C5 青  (空セル) D 白   100   AA 白   100   B 青   400   D3 青   200  (空セル) Sheet2ではSheet1の列が『青』の行だけ上詰めで表示するような エクセル表を作成しようとしています。 具体的には、 『もしSheet1が青ならばSheet2で青の行を表示しかつ上に積める、もし青以外であればSheet2ではその行は表示しない、もしセルが空欄であればSheet2では「未記入」と表示させる。』 といった感じの動作をさせたいのです。 Sheet1の表に上記の値を入力すると、Sheet2では関数を用いて結果的に以下のような表が完成するようにしようと思っています。 青   100   B 青   300   B3 青   未記入  D 青   400   D3 青   200  未記入 ------------------------------------------------------------- また、これとは別なのですが、電話表を作成するにあたって、 SheetAに『名前、電話番号』の元データを入力しておき、 SheetBで名前を入力すると自動で電話番号が横のセルに表示され、 かつSheetAの元データにない電話番号が入力されると、「登録者なし」 と表示する。ようにするにはどのような方法があるでしょうか? AND関数で元データの人の名前を全通り入力し、そうでなければ「登録者なし」と表示するといったものを作成したのですが見た目が悪い上に、同じ箇所でAND関数を繰り返し使うには回数限度があるようで、登録者が多いと使えません。 一度にたくさんの質問で申し訳ないのですがもしよろしければご回答宜しくお願い致します。

  • 入力規則を条件分岐させる方法

    規格最大値が格納されているフィールドA、規格最小値が格納されているフィールドB、そして測定データを入力するフィールドCがあるフォームを作成しました。フィールドCの入力規則プロパティで 「>=フィールドB or <=フィールドA or Is Null」 と入力しましたが、フィールドA、Bいずれかにデータが入っている場合(例えば100以下、100以上というような規格)は入力チェックが効きますが、フィールドA,Bともにデータが入っている場合(例えば100~200というような規格)に対しての入力チェックがかかりません(冷静に考えれば当然ですが)。そこでIIf関数を使おうと思ったのですが、入力規則プロパティの欄に条件式を入力することはできないようです。他の方法で入力規則の条件分岐をさせる方法ありますでしょうか。ご回答頂ければ非常にありがたいです。宜しくお願い致します。

  • Excel VBAでデータを自動処理したい(2)

    Excelで大量のデータ処理をしなくてはならないのですが、以下の処理をExcel VBAで自動処理できないでしょうか?どなたかお知恵をお貸しください。 別シートに参照リストと未完成リストがあります。参照リストのA列のデータの並びと未完成リストのA列の並びを同じくして、未完成リストを完成させます。参照リストのA列の並びはこんな風です。1 2 3 3 5 6 7 8 8 10 ・・・(データは昇順ですが必ずしも連番ではなく、同じデータが並ぶこともあります。) そして未完成リストの方は、1 2 3 4 5 7 8 10 ・・・といった風です。未完成リストのA列は1 2 3 3 4 5 7 8 8 10・・・という風にしたいのです。つまり参照リストにあっても、未完成リストにないデータは無視します。(上の例では、6です。)参照リストになくて、未完成リストにあるデータはそのまま残します。(上の例では、4です。)両方に共通のデータで参照リストのようにデータが重複しているときは、未完成リストの方に重複している分だけ行を挿入し、上のデータをコピーします。(上の例では、3と8です。)この処理を例えば、それぞれのA列を比較し、お互い共通していないデータ行をそれぞれのリスト上で不可視にし、そのあと、参照リストのA列のデータを参考に重複してるデータを見つけたら、未完成リストの方に重複している分だけ自動に行を挿入し、上のデータをコピーして、参照リストと未完成リストの共通のデータを同じならびにしたいのです。(このあと、参照リストのB,C,Dのデータを未完成リストにコピーするので、未完成リストにしかないA列のデータは、不可視にしておいて、B,C,Dのデータをコピーするときに行がずれないようにしたいのです。) 以上(1)、(2)の処理を自動にさせるためのVBAが分かる方がいらっしゃいましたら、是非ご教授お願いいたします。

  • エクセルで条件指定した行の合計値の出しかた

    A列 B列 C列 100  1   1 200  2   2 300  3   3 400  4   4 500  4   5 600  2   2 700  3   1 800  4   4 下記の条件にあてはまる行のA列の合計値をそれぞれ出したい。 ・B列が2以上、C列が2以下である。 ・B列が2以上、C列が3以上5以下である。 上記のデータ例が不定期にブロック分けされていて、オートフィルタが使いずらい状況です。 各合計値を出力するセルを指定して、関数等で処理する方法があったら、教えて下さい。

  • エクセル 条件付きの合計を速くできないか

    エクセルで以下の処理を行うと、時間が5分以上かかり、 もう少し早くできる方法があるなら教えてください。 A列は01から最大99まで、B列はAから最大ZZまで、C列は000から最大999まで、D列はランダムな数字、E列は○か×か△のデータが入っています。 例えば、ある行は、 03 BC 000 654 ○ また、ある行は、 34 C 009 76598 × です。 そして求めたいのは、D列の合計です。 01でAで001から999のうち○の合計と×の合計と△の合計をそれぞれ求めたい。 同様に 01でBで001から999のうち○の合計と×の合計と△の合計をそれぞれ求めたい。 同じことを繰り返し、最後に 99でZZで001から999のうち○の合計と×の合計と△の合計をそれぞれ求めたい。 合計を求める関数は、SUMPRODUCT関数を使いました。

  • 条件を指定して合計する方法を教えてください

    お世話になります。 エクセル2003を利用しています。 下記の様なデータを抽出して、容量を基準にした表を作成し、どの容量の荷物が多いのかを まとめたいと思っています。 地区名称 容量(キロ) 2011/01(数量) 2011/02(数量)……         北海道地区 4.2           15,670            19,051 関東地区 6            11,295            10,521 東北地区 20           10,355            10,418 東北地区 7            11,074             8,619 東北地区 5            10,898            16,303  ・  ・  ・                 1月     2月     3月     4月     5月     6月 4.9キロ以下 5.0キロ以上5.9キロ以下 6.0キロ以上6.9キロ以下 7.0キロ以上7.9キロ以下 8.0キロ以上8.9キロ以下 9.0キロ以上 容量に範囲を設定してまとめたいのですが、エクセル2007ではSUMIFS関数を利用して 条件を複数設定できる関数があるようですが、エクセル2003での範囲を指定して合計する方法をみつけられませんでした。SUMIFは、よく利用するのですが、今回は利用方法が違うような気がして、 別の関数(DSUM関数など)で試してみましたが、上手く出来ません。 出来れば、北海道地区の4.9以下・・・といった具合にまとめられればいいのですが、 関数に詳しい方、何卒、ご教示お願いいたします。

  • エクセル VBA 特定文字だけを見て条件分岐

    エクセルでVBAを使用してマクロを作っています K0123 K0122 K8888 J8888 L0000 上記のように縦に並んでいるセルにデータをいれて 各データを上から下へと見ていきます。 一つ一つのデータに処理を施すのですが 頭のアルファベットによって処理を 分岐させたいのです、どんな方法が あるでしょうか?

  • 教えて下さい!!!エクセルの関数に詳しい方、5つの条件を一つの式で求めたいのですが・・・。

    テストの点数によってレベルを一発で出したいのです。 例えば、点数が 0以上20以下なら、レベルE 21以上40以下ならレベルD 41以上60以下ならレベルC 61以上80以下ならレベルB 81以上100以下ならレベルA というように、点数から一度にレベルを弾き出したいのです。 IFを掛け合わせていけば簡単出来ると思うのですが、 いまいち上手く出来ません。 または、VLOOKを使用した方が便利なのでしょうか? 急ぎで調べなくてはならないデータが膨大にあります。 手作業ではかなりの時間を要してしまうため、良い方法はないでしょうか? エクセルの関数に詳しい方、アドバイスいただきたいです。 どうぞよろしくお願い致します。

  • エクセルでうまく条件が作れなくて困っています!

    ある計算式をおこなうための条件が適用されたら、次の条件を満たすまで先ほどの条件を無視して計算を続けるという感じでの設定をしたいのですが、関数などを利用して設定することは可能ですか? できるならやり方を教えてください。 具体例をあげると、スーパーで並んでいる客が5人以上になったら、2人に減るまでレジを開くという感じです。 今の状態は、レジを開いている間の計算式はできたのですが、その計算式を適用する条件をIF関数で客が5人以上の時にしてしまうと、4人になった時点で適用されなくなってしまいます。一度5人以上になったらまた2人以下に戻るまでは計算を続けたいのです。 関数を使った方法では無理ですか?

  • エクセルで各データの個数を数えたい

    エクセルでデータ処理がしたいのですが方法が分からず困っています。 データが整数値で「1,5,6,2,11,・・・」とあるのですが、これを「1:3個、3:2個、・・・」といった風に数え上げげたいです。 カウント関数で条件指定するにはデータの種類が多すぎるため、すべての値を自動で数えてくれるような書き方があればぜひ教えていただきたいです。 よろしくお願いします!

専門家に質問してみよう