こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

【エクセル】複数条件にあったときに文字を表示させる

エクセルで下記の条件にあったときの計算式を教えていただけないでしょうか。

・A1のセルが、「20:00」以上 ※他からの計算式の結果です
・A2のセルが、「10,000」以上 ※他からの計算式の結果です
・A3びセルが、「有給有り」テキスト

⇒「対象」の文字を表示させる

もうしわけありません。
どなたか、ご教示ください。

投稿日時 - 2016-03-28 20:40:48

QNo.9150263

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(7)

ANo.7

#3です。#3の回答でSUMPRODUCTのことを持ち出したのは、質問者の場合では該当しないように思いだして、訂正します。
ーー
AND関数やOR関数の質問ではないかと。
シートのデータ例として
A1 23:00:00
A2  12000
A3 有給在り
として、その他のセルに
=IF(AND(A1>VALUE("22:00:00"),A3="有給在り"),"該当","該当せず")
のようなことを、聞いているのかもしれないと思った。
ーー
余談。
ただエクセルでは1人分のデータは、A1,A2,A3に入れるのでなく
A1,B1,C1に入れるのが普通ですよ。まだまだExcelは行方向優先です。
特に「リスト」や「テーブル」の考えはね。
別対象(者)のデータは別行に、同じ対象のデータは同一行(の別列に)に入力するのが普通だと思う。

投稿日時 - 2016-03-29 10:01:37

お礼

ありがとうございます!
ご指摘のとおり関数をいれて試したところ
反映できました。
助かりました!

投稿日時 - 2016-03-29 14:51:14

ANo.6

回答No.4で勘違いがあるようです。
質問文の中の『・A1のセルが、「20:00」』とあることと、補足説明の中に『A1のセルの時間が「20:00」』とあるのは別物と解釈しています。
何方が比較値で何方が比較対象の値か不明なのです。
言葉足らずを行間の空白から補うのは至難の業であり、その不明瞭な説明を補って頂ければ目的の数式を引き出せると思います。

投稿日時 - 2016-03-29 07:34:05

ANo.5

>A1のセルの時間が「20:00」以上で、かつ
>B1のセルの金額が「10,000」以上で、かつ
>C1のセルの文字が「有給有り」である場合
>D1のセルに「対象」のテキストを表示させる

との事ですが、Excelの時間の計算には僅かな誤差が含まれている場合があり、

>A1のセルが、「20:00」以上 ※他からの計算式の結果です

という事は、A1セルに入力されている計算式によっては、表示上は「20:00」に見えていても、実際には「20:00」よりも極僅かに小さい値となっている恐れもあります。
 つまり、値が丁度「20:00」である場合には「『20:00』以上」と判定すべき処なのですが、「『20:00』以上」かどうかを判定する際に、単純に

A1>="20:00"*1



A1>="20:00"+0

などで判定してしまいますと、例えA1のセルの表示が「20:00」であっても「『20:00』以上」とは判定されず、D1セルに「対象」と表示されないという事が起きる恐れも無い訳ではありません。
 ですから、D1セルに入力する関数を次の様なものとした方が良いかも知れません。

=IF(COUNT($A1,$B1),IF(AND($A1+0.000001-"20:00">0,$B1>=10000,$C1="有給有り"),"対象",""),"")

投稿日時 - 2016-03-29 03:36:50

ANo.4

>以下の内容でご理解いただけますでしょうか?
意味不明としか言いようがありません。
もしかして次の数式で良いのでしょうか?
=IF(AND(A1>="20:00"*1,A2>=10000,FIND("有給有り",A3&"有給有り")<LEN(A3)),"対象","")
またはSheet1!D1へ次のような数式を入力すれば良いのでしょうか?
=IF(AND(Sheet2!A1>=A1,Sheet2!A2>=B1,FIND(C1,Sheet2!A3&C1)<LEN(Sheet2!A3)),"対象","")

投稿日時 - 2016-03-28 22:32:35

お礼

意味不明の質問だというのに
お答えいただきありがとうございます。

投稿日時 - 2016-03-29 09:19:41

ANo.3

エクセル関数で複数条件を判定するには、
(1)SUMIFS関数(2007以後)
(2)SUMPRODUCT関数(2003以前でも)
(3)IF関数をネストして使う(始めからのバージョンで使える。「ネスト」の意味は勉強のこと。)
などでしょう。
WEB(Googleなど)で上記の検索語で照会すれば、たくさん記事が出ます。用例もあります。見て勉強してください。
>A1のセルが、「20:00」以上
の20:00は夜8時以後の意味ですか。言葉表現も添えること。
エクセルので引数で、時刻をリテラル(文字う通り)で使うときは注意。
>下記の条件にあったときの計算式を教えていただけないでしょうか
(1)(2)(3)はOR条件か、AND条件かはっきり書いてない。
>他からの計算式の結果です
これは区必要はないのだ。
素のセルに人間がその数を入れている場合も、エクセル関数の結果でそうなっている場合も
佐賀に事がエクセル関数のすばらしい点なんだ。
>⇒「対象」の文字を表示させる
意味があいまい。「対象の」とは?
全般に、質問者はエクセル関数を最近使い始めたようで、他の回答者も回答に困っているようだ。具体的に例を挙げて、補足し、説明したらどうかな。
>条件にあったときの計算式
これは合った時と合わない時を1つに関数式で判定するのだ。引数の記述の仕方で、返す結果を別にするのだ。=IF(A1=”A","一致",”不一致")というように、IF関数では第2引数と第3引数で指定する。

投稿日時 - 2016-03-28 21:40:44

ANo.2

>・A1のセルが、「20:00」以上 ※他からの計算式の結果です
>・A2のセルが、「10,000」以上 ※他からの計算式の結果です
>・A3びセルが、「有給有り」テキスト
何れも検索値ですよね?
検索範囲を提示して頂けないと具体的な数式を提示できません。
また、目的に合うか否かの検証を行うには模擬データと結果の提示も必要です。

>どなたか、ご教示ください。
残念ながら不完全な情報では考え方しか提示できません。

考え方は以下のようになります。
検索対象のテーブルで3つの条件にマッチする行または列を探し、それに対する列または行の位置を指定して目的の値(文字列)を取り出せば良いでしょう。

投稿日時 - 2016-03-28 21:06:35

補足

ご回答をいただき、ありがとごうございます。

失礼いたしました。

以下の内容でご理解いただけますでしょうか?
----------------------------------
特定のセルに任意で数字を入力した場合に
右列に「対象」と表示させたいのです。

A1のセルの時間が「20:00」以上で、かつ
B1のセルの金額が「10,000」以上で、かつ
C1のセルの文字が「有給有り」である場合
D1のセルに「対象」のテキストを表示させる
----------------------------------

投稿日時 - 2016-03-28 21:44:14

ANo.1

もうしわけありません。
意味不明のサッパリポンです。

投稿日時 - 2016-03-28 21:03:09

あなたにオススメの質問