こんにちは。今、お仕事でこのようなことに直面しております。使用しているものはExcel2000です。
A B
1 予定6月8日 ←入力されている情報
2 確定6月18日 ←入力されている情報
3 遅延日数10日 ←セルB3 の結果を自動計算して出力出来るか?
という問題です。
例題のようにたかだか10日くらいのものでしたら問題ないですが、下記のような可能性があるため、考慮しなくてはならない事柄があります。
●西暦表示はさせずに ○月×日 としたいが、年月をまたがる計算も有り得ること。
(EX: B1セル→2004年12月25日 B2セル→2005年4月8日)
●セルB3の回答が32日以上の場合は ○ヶ月×日 というように出力したい。
書式が数値ではなく日付なのだから計算なんて出来るのかな?なんて思いつつデータの量が1sheetに6000件あります。さすがに自動計算させたくて…。
お手すきのお方、いらっしゃいましたら宜しくご教授くださいませ。
No.3ベストアンサー
- 回答日時:
他の方の回答されていますが、
別案で、
B3には"=IF(B2-B1>31,INT((B2-B1)/31)& "ヶ月" & MOD(B2-B1,31) & "日",B2-B1 & "日")"を埋める。
実は、他の方と値が異なります。
年を越える例の場合、日数は104日になります。
dateifを使うと、3ヶ月14日になりますが、
上記の計算式では、3ヶ月11日です。
(1ヶ月を30とするか?の違いかと思われます)
どちらの値を期待されているのか次第ですが・・・
早速のご回答、有難うございました。これもOKです!
ただおっしゃっていた通り、一ヶ月を30日とするか31日とするかで異なりますよね。
相談出来る上司が本日は退社しましたので、この部分は来週早々に相談して決定します。
#でも。。。一般的には30日でカウントするものなのかな?それとも31日?
No.6
- 回答日時:
#3です。
先ほどの回答で27と記載しましたが28日です。予定を6/8、確定には3/25で計算した結果が”9Kヶ月20日”とありますが、9ヶ月17日又は9ヶ月11日では有りませんか?
この場合は、日数は290日になりますので、1ヶ月を31日換算すれば、9ヶ月と残りの日付が11日になります。
但し、DateIFを用いると、6月から3月までの各月の末日が31日になっていない日を数えると6日になり、dateIFでは+6日の17日になります。
もっと分かりやすい例では、
12/25から3/25にした場合、日数は90日になり、1ヶ月31日換算すると2ヶ月と28日になります。
DATEIFでは、2月で28日なので、3ヶ月0日になります。
これで通じるかな?
おはようございます。昨日に引き続き、有難うございました。
そして、おっしゃる通りで9ヶ月20日というのは私の間違えでした^^; 実はわが社ではネットの使用が禁止されているんですが、どうしても今回はご教授戴きたかったのでひっそり見つからないようにこちらのPAGEにアクセスしてました(笑)
それとずっと研修続きで仕事も溜まっていて気持ち的にも焦っていて、その結果、ミスをしたんだと思います(汗)
No.5
- 回答日時:
#3です。
30日と書きましたが、誤りです。
DATEIFでは、2ヶ月目は、27日で3ヶ月目になります。
提示の例では2005/3/25で差異が発生します。
度々恐縮です。今、みなさんから頂いたデータをいじっているのですが少しずつ、どうしよう…とか、あれ?というような部分が出てきていたり…。私の入力ミスという事も多分に考えられますが^^;
で、ご提示頂きました件を今、実証してみました。
予定を 6/8 と入力(中身は2004/06/08)、確定には 3/25(中身は2005/3/25) としたところの計算結果は9Kヶ月20日となりました。。。
ぅーん。何故?というかこれは先程のご説明とおり、仕方の無いこと?というか仕様なのですか?(そんなわけ無い…?かな?)
No.4
- 回答日時:
#2のmshr1962です。
一つだけ訂正します。
B1>B2の状態だとエラーします。
(B2が未入力や年度、月の入れ間違いで大小が逆の場合)
=IF(B1>B2,"",IF(B2-B1>31,DATEDIF(B1,B2,"m")&"ヶ月"&DATEDIF(B1,B2,"md"),B2-B1)&"日")
としてください。
早速、またまたのご親切なアドバイス、有難うございました。そして私は全く、このような事態も有り得ることを想定した式を考えようともしておりませんでした。有難うございます!めちゃくちゃ助かりました。またこれで一つ、お勉強になった^^;(もっと知識をつけなきゃ!って感じですよね(恥))
No.2
- 回答日時:
日付形式なら
=B2-B1
で出ませんか?最後に表示形式を変えればOK
>セルB3の回答が32日以上の場合は ○ヶ月×日 というように出力したい。
なら
=IF(B2-B1>31,DATEDIF(B1,B2,"m")&"ヶ月"&DATEDIF(B1,B2,"md"),B2-B1)&"日"
ただし文字になるのでこのセルを計算には使えません。
早速のご回答、有難うございました。単純に =B2-B1 で実行してみたのですが残念な結果でした。。。。
それと別の式を記載してみましたが、これならOKでした。有難うございました!!
No.1
- 回答日時:
DATEDIF関数を使って下さい。
この関数は関数ウィザードからは指定できませんのでセルに直接入力して下さい。
=IF(DATEDIF(B1,B2,"M"),DATEDIF(B1,B2,"M")&
"ヶ月","")&DATEDIF(B1,B2,"MD")&"日"
もちろん文字列であって シリアル値ではありません。
こんにちは。早速のご回答、有難うございました。
今、ご教授いただきましたとおりに作業をしましたらOKでした。有難うございました!
(それにしても…知識の無さにもっと頑張らないと。。。と常々感じました^^;)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) 現時点の年齢を算出して、その年齢と一致したセルを色付けしたい。 4 2022/06/23 17:49
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- Excel(エクセル) EXCELピボットテーブル関数について 2 2023/04/10 20:35
- Excel(エクセル) セルに特定の色が出た時だけ、式を発動させたい 4 2022/06/17 10:32
- Excel(エクセル) 至急です><Excelの関数を教えてください。 2 2022/03/22 17:56
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
- Excel(エクセル) エクセルについて教えてください。 1 2023/03/03 08:38
- その他(Microsoft Office) エクセルの休日について教えてください。 1 2023/01/06 15:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IF関数で、時間を条件にしたい...
-
ヘッダー
-
エクセルで、時間の計算をした...
-
エクセルの使い方 1日=7時間45...
-
EXCELの関数に関する質問です
-
エクセルで 足し算や割り算の...
-
TEXTCALCの使い方
-
エクセルでの時間計算(2時間30...
-
エクセル 1万時間を越える際の...
-
エクセル・計算式をテキストデ...
-
エクセルの計算結果が0になって...
-
Excel 関数? 文字列に...
-
計算結果が「0」のセルだけを「...
-
AかBに入力があった時Cに反映、...
-
Excelの計算式内の文字列の一括...
-
多項式の計算
-
数式の計算結果により表示され...
-
エクセルで比率を計算
-
エクセルで時間帯を 深夜、日中...
-
#DIV/0!の表示があるセルの計算
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ヘッダー
-
IF関数で、時間を条件にしたい...
-
エクセルの使い方 1日=7時間45...
-
計算結果が「0」のセルだけを「...
-
エクセルで、時間の計算をした...
-
数式の計算結果により表示され...
-
EXCELの関数に関する質問です
-
エクセルで 足し算や割り算の...
-
エクセルでの時間計算(2時間30...
-
excel 参照しているセルに色が...
-
Excelの計算式内の文字列の一括...
-
エクセル・計算式をテキストデ...
-
TEXTCALCの使い方
-
AかBに入力があった時Cに反映、...
-
Excel 関数? 文字列に...
-
エクセルの計算結果が0になって...
-
エクセル 月数を0.5ヶ月単位で...
-
エクセルで足し算と掛算を混ぜ...
-
エクセル 1万時間を越える際の...
-
エクセルで数値を50単位で切...
おすすめ情報