• ベストアンサー

複数の条件によって表示させたい

図のように結果を関数で表示させたい。 A列(正社員と嘱託の場合)BセルとDセルが一致していて、CセルとEセルも一致している場合は「前後○」と表示させたい。 A列(正社員と嘱託の場合)BセルとDセルが一致していて、CセルとEセルも不一致している場合は「後×」と表示させたい。 A列(正社員と嘱託の場合)BセルとDセルが不一致していて、CセルとEセルも一致している場合は「前×」と表示させたい。 A列(正社員と嘱託の場合)BセルとCセルがDセルが一致していて、Eセルが空欄の場合は○と表示させたい。 A列(パート)の場合はBセル、Cセル Dセル,Eセルが空欄でも〇

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

  • ベストアンサー
  • NuboChan
  • ベストアンサー率47% (746/1586)
回答No.1

条件から出力される結果と参考画像の結果で 4行目と9行目が「前×」はおかしくないですか? 参考のVBAです。 Sub Compared() Dim i As Long For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row Select Case Cells(i, "A") Case "パート" Cells(i, "F") = "○" Case "正社員" If Cells(i, "B") = Cells(i, "D") And Cells(i, "C") = Cells(i, "E") Then Cells(i, "F") = "前後○" If Cells(i, "B") = Cells(i, "D") And Cells(i, "C") <> Cells(i, "E") Then Cells(i, "F") = "後×" If Cells(i, "B") <> Cells(i, "D") And Cells(i, "C") = Cells(i, "E") Then Cells(i, "F") = "前×" If Cells(i, "B") = Cells(i, "C") And Cells(i, "C") = Cells(i, "D") And Cells(i, "E") = "" Then Cells(i, "F") = "○" Case "嘱託" If Cells(i, "B") = Cells(i, "D") And Cells(i, "C") = Cells(i, "E") Then Cells(i, "F") = "前後○" If Cells(i, "B") = Cells(i, "D") And Cells(i, "C") <> Cells(i, "E") Then Cells(i, "F") = "後×" If Cells(i, "B") <> Cells(i, "D") And Cells(i, "C") = Cells(i, "E") Then Cells(i, "F") = "前×" If Cells(i, "B") = Cells(i, "C") And Cells(i, "C") = Cells(i, "D") And Cells(i, "E") = "" Then Cells(i, "F") = "○" End Select Next End Sub

nkmyr
質問者

お礼

ありがとうございます。 作動できましたが、おっしゃる通り4と9行がおかしいですね。質問の内容が間違っておりました。 新たに再度質問させてください。

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

関連するQ&A

  • エクセル 複数の条件に一致

    複数の条件に一致したセルの内容によって、別のセルに別の文字を自動で表示したいのですが可能でしょうか? 詳細はこのような形で、 【シート1】       A     B       C 1      0001     3/1    有 2      0002     3/1    無 3      0001     3/2    不明 【シート2】       A     B       C 1             3/1      3/2 2      0001       ○      △ 3      0002       ×     "空欄" ・シート2のB2からC3を自動で表示できるようにしたい。 ・シート1のA列とシート2のA列が一致、更にシート1のB列とシート2の1行が一致。 ・シート1のC列が「有」の場合「○」、「無」の場合「×」、「不明」の場合、「△」、「空欄」の場合、「"空欄"」と表示。 知りうる限りの関数を合わせてみましたが、できませんでした。 どなたかいい方法を教えて頂ければと思います。 環境はXPpro、エクセル2000です。 宜しくお願いします。

  • エクセル複数条件一致の数式

    質問失礼します。 下記のエクセルデータから、E列のセルに、条件にあわせて5か6、もしくは空白を表示させる数式を作りたいと考えています。 条件として セルE2に5を表示さる場合 D2がa4の時、A列から、同じa4を検索し、この場合は、行10と行11が該当します。 その該当する行から、 セルD2の文字列a4がある行のA列のセル、この場合は、セルA2のa1 と文字列が一致するセルB11の11行目が選択され、その行にあるC列の数字を、E2セルに表示させたいです。 E列に入れる数式は作ることが可能でしょうか? 色々試してみましたが、どうしてもうまくできませんでした。 よろしくお願いします。   A  B  C   D    E 1        2 a1  a2   5    a4   5 3 a1  a3       a3   6 4 a1  a1       5 a2  a3   5    a1   5 6 a2  a1       7 a3  a1   6    a2   5 8 a3  a1       a4   6 9 a3  a4   5    a2   5 10 a4  a3   6    a3   5 11 a4  a1   5    a2

  • エクセル 複数条件で検索する数式を教えてください。

    社員の作業時間入力シートが2つあり、それぞれに入力しているため、入力ミスによる誤差が生じます。それをチェックしています。 検索条件が複数になる場合の計算式を教えてください。 [sheet1]   A   B   C   D  E 1 社員CD 日付  作業時間1 作業時間2  誤差 2 1000 2008/1/1   3.5  ここに数式   =C2-D2 3 1000 2008/1/2  2.5    数式    =C3-D3 4 1001 2008/1/1   5.0    数式    =C4-D4 [sheet2]   A   B   C    1 社員CD 日付  作業時間2 2 1000 2008/1/1  3.0 3 1000 2008/1/3   1.5 4 1001 2008/1/1  5.5 sheet1のD列にsheet2のC列を表示させたいのですが、 条件はA列とB列が一致するものになります。 A・B列が文字列ではないため、1列挿入して=A2&B2列を作成することができませんでした。 D列に数式をいれる事で一発で表示させる方法を教えてください。

  • 違うブックを参照して、数値を表示するには?

    質問失礼します。 エクセルで保存した違うブックにあるデータから、複数条件で一致するものを検索し、表示することは可能でしょうか? 例えばブック1のG2に、ブック2のE1を表示させたいのですが、 条件が、ブック1のG2がある行の「B2とC2とD2とE2」の数値や文字列、空白などが、一致する行を,ブック2から検索し、その行にある、E1を、ブック1のG2に表示させたいです。 ブック1とブック2の一致させたい範囲 ブック1のB列、C列、D列、E列の行単位のセルと並び方=ブック2のA列、B列、C列、D列の行単位のセルと並び方 求めたい物 ブック2の条件にあったE列のセルをG列に表示したいです。 可能でしょうか? ブック1   A  B  C  D  E  F  G 1    8  a1 50  1 2    8  a1 50       30 3    8  a1 60       20 4    8  a1 70 20 5    3  b5 60 20     3 ブック2   A  B  C  D  E  F 1 8  a1 50    30  2 8  a1 50  1 3         4 8  a1 60    20 5 8  a1 70 20   6 7 3  b5 60 20  3

  • IF関数の複数の条件について

    よろしくお願いいたします。    A   B   C 1  ○   ○    あ  2  ○   △    い  3  △   △    う 4  △   ○    え 5  □   △    お A列が○でかつB列が○のみ場合、E列は「あ」、 A列が○でB列が○以外の場合はC列は「い」、 A列が△でかつB列が△のみ場合、E列は「う」、 A列が△でB列が△以外の場合はC列は「え」、 A列が○、△以外の場合はC列は「お」。 というようなIFを使った数式はは可能でしょうか? 質問に矛盾がありましたら申し訳ありません。

  • IF関数(複数条件)

    E1:検索したい商品番号 E2:検索したい商品棚コード A列:商品番号 B列:商品棚コード C列:価格 とある場合、A列の商品番号もB列の商品棚コードもE1、2のものと一致する場合に限り、C列の価格をD列に表示するようにしたいです。 どう入力すれはいいでしょうか。

  • 条件一致した際、和を表示する。

    A1のセルに、 D5:D15のセルに『2008/8/1~2008/8/31』記入されていた場合 一致した行のC列の合計を表示させる場合どうしたら良いでしょうか。 ※ちなみにD列は、年月日が入力されているのですが年月だけの検索をさせてたいです。 A2は、『2008/9/1~2008/9/30』 例えば D6とD10とD11が、2008/8/2、2008/8/5、2008/8/10だったとします。 (他は、2008/9/1とか、2008/8/*ではない) すると、C6とC10とC11のセルの和が表示されるようにしたいです。

  • Excel比較関数について教えてください。2

    下記のようにA列とC列を比較して、 一致した値が存在する場合、B列とC列を比較して、 E列に全て一致した場合は○、一致しない場合は×にしたいのですが教えてください。 また、A列にあってC列にない場合は、×を表示したいです。 A列 B列 C列 D列 E列 1 12345 aaa 12389 aaa A1とA3が一致&B1とD3が一致したので○ 2 12389 bbb 22222 bbb A2とC1が一致したが、B2とD1が一致しないので× 3 33333 bbb 12345 aaa A3の値がC列にないので空欄 教えてください。

  • Excel関数で自動表示は可能でしょうか。

    最近Excelを始め仕事(道路関係)に使うため勉強しています。 質問失礼致します。 下記のようなExcelシートがあるとします。   A  B  C   D E 1    ○ × 2 a1  a2 a3   a4 × 3 a2  a3 a4    4 a3  a1 a4    5 a4  a1 a2      ここで質問ですが、D2のセルに、a4と入力した時に、下の計算式を通した上で、E2のセルに×と自動表示させためにはどういった数式がひつようでしょうか? 計算式 A列から、D列に入力した文字列(D2のセルに入力したa4)と同じ文字列をみつけ、(この場合はA5セルにあるa4が抽出される)。A列で抽出された一致する文字列の行から、文字列を入力した行のA列(D2のセルにa4と入力したので、その行のA列は、a1になる)に一致する文字列を判断し、さらに、○の列か×の列か、一致するほうの○×どちらかを、自動でE2セルに表示させる。   A  B  C   D E 1    ○ × 2 a1  a2 a3   a4 × 3 a2  a3 a4   a1 ○ 4 a3  a1 a4   a1 × 5 a4  a1 a2   a2 × その数式を使って、D列に文字列を入力していくと、自動にE列に結果を表示させたいです。 ややこしくて、申し訳ありませんが、よろしくお願い致します。

  • Excel比較関数について教えてください。

    下記のようにA列とC列を比較して、 一致した値が存在する場合、B列とC列を比較して、 E列に一致した場合は、●一致しない場合は、空欄にしたいのですが教えてください。 A列 B列 C列 D列 E列 12345 aaa 12389 bbb A2と一致したので● 12389 bbb 22222 bbb 一致しないので空欄 33333 bbb 12345 aaa A1と一致したので●

専門家に質問してみよう