- ベストアンサー
日付の計算
会員登録表を作っているのですが、準会員から正会員に切り替えるタイミングが3ヶ月後で、 準会員登録日が1日(日曜、祝祭日の場合は翌2日)の場合はその月を入れて、それ以外の日は計算しないで 翌々々月に正会員登録(1を出力)としたいのですが方法が有れば御教示お願い戴けませんでしょうか。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>準会員登録日が1日(日曜、祝祭日の場合は翌2日)の場合はその月を入れて・・・ たとえば3月1日が祝祭日だとしたら翌日の3月2日からとなりますので セルA1に3/2を入力(3月2日←自動設定されると思います) >翌々々月に正会員登録(1を出力)としたいのですが その月を入れて計算するのでしたら、準社員になった日から本日までの月数を求める事で計算できると思います この式を↓コピーして数式バーに貼り付け B1=DATEDIF(A1,TODAY(),"ym")&"ヶ月"&DATEDIF(A2,TODAY(),"md")&"日" C1=IF(B1>="2ヶ月","正社員","準社員") ←この式をコピーして貼り付け 「DATEDIF」関数自体は存在しないのですが関数から「DATE」を選択して「DATE」の後ろに「DIF」を入力し、付け加えると「DATEDIF」関数が設定されます 意味は、開始日から終了日を指定して、その期間の月数と日数を求めます =DATEDIF(A1,TODAY(),"Y")の場合は年数を求めます 「"Y"」←年数 「"YM"」←月数 「"MD"」←日数 C1=IF(B1>="2ヶ月","正社員","準社員") これは論理関数の基本ですので解ると思いまので意味は省きますね その月を入れないのであれば計算式は C1=IF(B1>="3ヶ月","正社員","準社員") で、正社員か準社員を返します
その他の回答 (3)
- tom04
- ベストアンサー率49% (2537/5117)
No.3です! たびたびごめんなさい。 前回の回答では土曜日が休日扱いになります。 土曜日は営業日(稼動日)みたいなので No.3の回答は無視してください。 どうもすみませんでした。m(__)m
お礼
tom04様本当に有り難う御座いました。 大変ご親切、親身に御教示戴きまして有り難う御座いました。
- tom04
- ベストアンサー率49% (2537/5117)
- Cupper
- ベストアンサー率32% (2123/6444)
自分ならベタな方法ですが、日曜・祝祭日を判定する為にカレンダーを作成します あとはカレンダーから平日・土曜の日数をカウントですね 一つの関数でできるような物ではありませんから、実際に人が行う手順を自動化するようにしてみましょう ※ マクロも同じ 近い機能としては、workday関数という物もあります これは土曜日も休日として扱いますから、この関数を使用した場合は別途土曜の日数を求める必要があります ※ workday関数はアドインツールに含まれるため標準状態では使用できません
お礼
Cupper様早々の御教示有り難う御座いました。
お礼
esupuresso様丁寧な御教示戴きまして有り難う御座いました。 御陰様で解決致しました。