No.3ベストアンサー
- 回答日時:
★最初に
>関数を一切使わず計算式と場合分けのみで計算する方法ありますか?
↑
あります。というか関数で記述することを記述すればよいだけ。
汎用性も考えれば専用の関数か、日付操作ライブラリを自作して使いまわした方が
良いと思いますよ。
>今考えている方法は、地道に、ある基準1970年1月1日をシリアル値で0としそこから、
>今日までの日数を1月は31、2月は28にちなどを考えてを足していき、シリアル値を算出。
>そのシリアル値に+10した値を再び年月日曜日の形に戻す方法しか無いのかと考えています。
↑
私もこの方法しか思い浮かびません。
このときの注意点として『閏年』の判定、扱いをきちんと考えないと正確になりません。
表計算で有名な Excel について興味深い記事を見つけましたので読んで見て下さい。
http://pc.nikkeibp.co.jp/article/NPC/20070530/27 …→『DATEDIF関数の“受難” (第1回)』
↑
3ページ目です。
>10日ではなくて10000日だったらどんな感じになりますか?
↑
加減算する日付を西暦1年1月1日を1としたシリアル値に変換して加算、減算とするしかないかな。
・開始日を Y1/M1/D1 とすると
days = ((Y1 * 365) + (Y1 / 4) - (Y1 / 400 * 3)) + FuncGetDays(Y1,M1,D1);
days += 10000; ←加算
days -= 10000; ←減算
この days のシリアル値を年、月、日に変換します。
※FuncGetDays() 関数は年月日から1月1日の日数を計算する関数です。
※この関数の詳しい内容は下の『参考URL』をどうぞ。回答者No.2です。
※そのたも参考になります。
・以上。
参考URL:http://oshiete1.goo.ne.jp/qa3085731.html
No.2
- 回答日時:
10000日でも処理方法は変わりません。
1)単純に「日」に 10000を足す
2)その「日」の結果は、「月」に対して妥当か?
妥当ならそれが答
3)「日」から、その月の日数を引く
「月」をひとつ増やす
4)その「月」は妥当か?
妥当ならそれが答
5)月を1にして、年をひとつ増やす
7)2に戻る
8)終わり。
No.1
- 回答日時:
曜日が入力されるのであれば、曜日の処理は簡単ですね。
(そもそも、入力値は7種類しかない)
日付は
1)単純に「日」に 10を足す
2)その「日」の結果は、「月」に対して妥当か?
(ここで、「その月は何日あるか」がわかっている*はず*であることに注意)
妥当ならそれが答
3)「日」から、その月の日数を引く
「月」をひとつ増やす
4)その「月」は妥当か? 妥当ならそれが答
5)月を1にして、年をひとつ増やす
6)終わり。
この回答への補足
ありがとうございます。曜日は簡単ですね。
2月25日の場合、年によってうるう年かどうか判定すればよいってことですね。
10日ではなくて10000日だったらどんな感じになりますか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 労働相談 有給計算について 回答お願いします。 建設業経営です。休日は日曜のみ 従業員の有給計算について 雇い 2 2023/03/26 06:12
- Excel(エクセル) 現時点の年齢を算出して、その年齢と一致したセルを色付けしたい。 4 2022/06/23 17:49
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) EXCELピボットテーブル関数について 2 2023/04/10 20:35
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- 預金・貯金 家計 1 2022/05/28 23:29
- 求人情報・採用情報 月単位、週40時間の変形労働時間制で、 日曜祝日土曜半日の固定休+シフト制(平日一日)の企業の場合、 1 2023/08/10 23:43
- 投資・株式の税金 一般口座で同一銘柄の総平均法のことで 1 2023/02/27 22:08
- その他(ビジネススキル・経営ノウハウ) 貸付金 利息、無利息 回答お願いします。 会社経営者です。 例えば、 従業員に40万貸付 返済期間 7 2023/01/22 09:32
- 財務・会計・経理 減価償却(一括償却)について質問です。 ※1月決算の場合(新しい期2月1日から) 7月10日 134 2 2023/08/12 02:21
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAの再計算が反映されない件に...
-
65536は2の何乗なのでしょうか?
-
バッチファイルでウインドウを...
-
C言語についてです。 再帰を使...
-
排他的論理和 BCC(水平パリテ...
-
モジュラス103の計算とは何でし...
-
関数を使わないで日付の計算を...
-
Javaでのある数の小数点乗に...
-
エクセル以外で麻雀の成績を管...
-
切り上げたい
-
三菱シーケンサー works2 の日...
-
時間(ミリ秒を含む)の引き算
-
CRC8を教えてください
-
Excel VBAの残業時間の合計計算...
-
伝達関数のステップ応答→グラフ...
-
勤怠管理表を作成しています、...
-
順列のプログラムについて(VB)
-
Matlabでのinverse(逆関数)の...
-
チェックデジット計算できる関...
-
matlab計算での進捗状況を知りたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
排他的論理和 BCC(水平パリテ...
-
VBAの再計算が反映されない件に...
-
EXCELなどで「返す」という表現
-
バッチファイルでウインドウを...
-
変化させるセルが変化しない
-
[急募]Pythonについてです。
-
数値計算の高速化 (cos, sin, exp)
-
CとFORTRANの計算速度はどちら...
-
CASLIIで三角形の面積を求めた...
-
VBAで関数をつくる
-
傾いた四角形内の範囲の条件式
-
エクセルで特定のセルのみを任...
-
スレッド処理からダイアログを...
-
matlabで計算終了
-
なぜオーバーフローになるので...
-
VBでReplace
-
相性占いのソース
-
モジュロ
-
C言語 log実装
おすすめ情報