
はじめまして。
過去ログで、近いのはあったのですが、
あと一歩でしたのでよろしくお願いいたします。
A B C
1 金額 日にち 結果
2 200 2004/4/20
3 100 2004/3/21
4 440 2004/8/8
5 250 2004/9/25
6 300 2004/10/15
7 150 2004/11/12
C列に、B2が2004/4/1~2004/9/30の範囲内なら、
A2をそのまま参照したいだけです。
つまり、=IF(2004/4/1<=B2>=2004/9/30,A2,"")
じゃ、駄目なんですか?
No.1ベストアンサー
- 回答日時:
質問に書かれている式の誤りは
1)ケアレスミスと思いますが、不等号の向き(「B2>=2004/9/30」ではなく「B2<=2004/9/30」)
2)数式中で「2004/9/30」というような書式は使えない(「2000÷9÷30」になってしまいます。DATE関数を使ってシリアル値に変換してやる必要があります→DATE(2004,9,30))
3)「2004/4/1<=B2<=2004/9/30」というように、一度に2つの不等式を記述することはできません。この場合AND関数を使って「2004/4/1以降」かつ「2004/9/30まで」というふうに2つに分けます→AND(DATE(2004,4,1)<=B2,B2<=DATE(2004,9,30)))
(関数についてはExcelのヘルプも参考にして下さい)
以上をまとめて
=IF(AND(DATE(2004,4,1)<=B2,B2<=DATE(2004,9,30)),A2,"")
とすれば、お求めの結果が出ると思います。
No.4
- 回答日時:
こんにちは。
maruru01です。こんな方法も。
B2に、
=IF(OR(TEXT(B2,"yyyymm")="20040"&{4,5,6,7,8,9}),A2,"")
もし日付データが、今年(2004年)しかないなら、
=IF(OR(MONTH(B2)={4,5,6,7,8,9}),A2,"")
だけでもいいです。
No.3
- 回答日時:
この質問で2つのポイントがあります
(1)条件が2つ(以上)ある場合の関数の書き方
本質問は日付に関してで、条件は(A)何日より先 (B)何日より後の2つです。
この場合は=AND(1つの条件,2つ目の条件)
です。これを=IF()で聞く。
数学のように変数を挟んで200<A>300
の表現は、エクセル関数では駄目です。
(2)日付定数の関数式の中での表現のし方
時刻などは、””で括るとか、プログラム言語(例 VB)では##で括るとか有りますが、エクセル関 数の場合それらは駄目でした(何かやり方がありそ うなのですが、浅学のため判らず)。
2004/4/1は駄目で、2004÷4÷1即ち501と解されて しまいます。
どうも=DATE(2004,4,1)か=DATEVALUE("2004/4/1")
と表現するしか無い様です。
日付2004/4/1は値としては38078という整数であっ て、A>=38078でも良いのですが、38078を見つけ る点や、表現上で良くなく使わないでしょう。
結果は#1のご回答か
=IF(AND(C4>=DATEVALUE("2004/4/1"),C4<=DATEVALUE("2004/9/30")),A4,"")
です。
ありがとうございます。
そのようでした。
条件分岐はANDでとのことですね。
なんか基礎中の基礎で恥ずかしいことをしました・・・。
No.2
- 回答日時:
横から失礼します。
既に、No.1 の s_yoshi_6 さんが回答されていますが、補足です。
文字列の日付式をシリアル値に変換するにはDATEVALUE関数でもOKです。
=IF(AND(DATEVALUE("2004/4/1")<=B2,B2<=DATEVALUE("2004/9/30")),A2,"")
ありがとうございます。
NO1さんで、ほぼ私の要望は満たされましたよ。
多少追加関数もありまして、
その際に直しながら使用しました。
KenKen_SPさんのも次回は是非使わせていただきますね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで部分的にGROUP BYしたいとき
-
日付型なら変数の先頭になん...
-
SQLサーバで和暦から西暦に変換...
-
日付の切り出し方法について
-
wordの差し込み印刷での日付表示
-
SQLで今日の日付でWhereしたい
-
Oracle10gのsql分についての質...
-
エクセルの日付に時差を加算 #V...
-
Exel関数で誕生日がきたら...
-
OSのシステム日付を変更して...
-
Statement ignored というエラー
-
Accessのマクロでモジュールを...
-
Access VBAで行ラベルが定義さ...
-
sqlplusでヘッダーが付かない
-
DBMS_OUTPUT.PUT_LINEを実行し...
-
callで順に実行されるプロシー...
-
カーソル定義での条件分岐
-
sqlplusのspoolで空白行出現
-
SQLの結果に納得できません。ど...
-
ROW_NUMBER()を使用したデータ取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLで部分的にGROUP BYしたいとき
-
重複するIDのデータを1行にま...
-
今日の日付が入った行のデータ...
-
Accessの数値から時間に変換す...
-
14桁の日付(YYYYMMDDHHMMSS)を...
-
テーブルの主キーをdate型...
-
SQLサーバで和暦から西暦に変換...
-
日数算出SQL
-
日付書式に変換でこまっています!
-
日付型なら変数の先頭になん...
-
エクセル 日付による並べ替え...
-
Excelグラフの日付軸の日付がず...
-
WHERE句にて「30日前から今日ま...
-
yyyy/M/dをyyyy/MM/ddに変換
-
特定の日付が第何週目にあるか...
-
SQL/Loaderでの年月日時分秒の...
-
excel 日付のみ置換したいのです
-
日付を表示形式で戻すSQL文を書...
-
DB2のSQL(日付)について
-
23時59分59秒までのデータを抽...
おすすめ情報