SYUNDOファイル

お役に立てればうれしいです。

万年カレンダー

エクセルで干支カレンダー(マクロ編)

投稿日:2016年12月9日 更新日:

エクセルのマクロでユーザー定義関数を作成して万年干支カレンダーを作成しました。
干支は、新暦、旧暦、節切りの三種類求めることができます。


スポンサーリンク

新暦、旧暦、節切りの簡単な説明

新暦

新暦は、1582年にローマ教皇グレゴリス13世が制定したグレゴリオ暦です。
日本は、明治5年(1872年)12月2日の翌日を明治6年(1873年)1月1日として採用されました。

旧暦

それ以前の暦を旧暦といいます。
旧暦は、今でも日本の各地の行事などで採用され、カレンダーにも旧暦が載っているものも多く馴染みは深いです。

節切り

節切りとは、二十四節気による暦の切り代わることです。
二十四節気は、季節を表す為に今でもよく使われます。
冬至にゆず湯に入るとか、立春の前日が節分で豆まきなどの日本の行事も多くあります。

しかし、月の切り替わりというイメージはあまりありません。
節切りは、立春の日を年の初めの日とします。
二十四節気には、節気と中気があり節気の日に月が代わります。
詳しくはこちら

年、月、日の干支の計算

年の干支

年の干支は、西暦の年から十干と十二支をそれぞれ求めます。

十干は、西暦から10を割り、その余りから求めます。
0:庚、1:辛、2:壬、3:癸、4:甲、5:乙、6:丙、7:丁、8:戊、9:己

十二支は、西暦から12を割り、その余りから求めます。
0:申、1:酉、2:戌、3:亥、4:子、5:丑、6:寅、7:卯、8:辰、9:巳、10:午、11:未

この十干と十二支を合わせたのがその年の干支になります。
最近では、今年の干支は申(さる)などと十二支のことを言いますが、正確な干支は十干と十二支をあわせたものをいいます。

例えば2016年の干支を求めて見ると
十干は、2016÷10の余りは6で丙になります。
十二支は、2016÷12の余り0で申になります。
干支は丙申(ひのえさる)です。

月の干支

月の干支を求めるには複雑になってきます。

十二支は月ごとに決まっています。
十干は月と西暦の1桁で決まってきます。(表1)

表1

例えば2016年2月であれば
十干は、西暦の一桁は6で2月なので6と2月のところで辛になります。
十二支は、2月なので卯になります。
2016年2月の干支は辛卯(かのとう)になります。

日の干支

日の干支は、修正ユリウス通日に50をプラスして60で割り、その余りで求めます。

表2

修正ユリウス通日は新暦で計算します。
y=年、m=月、d=日
もし月が1月と2月なら年から1マイナスする。
また、月が1月と2月なら月に12プラスする。
修正ユリウス通日=INT(365.25y)+INT(y/400)-INT(y/400)+INT(30.59(m-2))+d-678912
※INTは切り捨て

で計算します。

例えば2016年2月24日だと
2月なので年から1マイナスし、月から12プラスします。
修正ユリウス通日=INT(365.25×(2016-1))+INT((2016-1)/400)-INT((2016-1)/400)+INT(30.59(2+12-2))+24-678912=57442

日の干支は
(57442+50)÷60の余りは12で、干支は丙子(ひのえね)になります。

年と月の干支は、新暦、旧暦、節切りで変わりますが日の干支はどれも同じになります。

干支カレンダーのダウンロードとユーザー定義関数の説明

干支カレンダーの完成品はこちらでダウンロードできます。【干支カレンダー】
圧縮ファイルの解凍の仕方はこちら

ユーザー定義関数の説明

※値は2016年2月24日の値

ユーザー定義関数 説明 参照
geturei 16.015625 月齢 23時59分59秒 日付を参照
getureiw 15.515625 月齢 12時 日付を参照
hikansi 丙子 日の干支 日付を参照
kyudy 17 旧暦 日 日付を参照
kyuneeto 丙申 旧暦 年の干支 日付を参照
kyunen 2016 旧暦 年 日付を参照
kyureki 1 旧暦 月(文字列) 日付を参照
kyutuketo 庚寅 旧暦 月の干支 日付を参照
mjd 57442.625 修正ユリウス通日+時間(23時59分59秒) 日付を参照
mjdw 57442.125 修正ユリウス通日+時間(12時) 日付を参照
moon 170.145377 月横径 修正ユリウス通日+時間
rett 57442 修正ユルウス通日 日付を参照
rokuyou 大安 六曜 日付を参照
setu 1 節切り月 日付を参照
setuhi 21 節切り日 日付を参照
setunen 2016 節切り年 日付を参照
setuneneto 丙申 節切り年の干支 日付を参照
setutuki 庚寅 節切り月の干支 日付を参照
sinnen 丙申 新暦年の干支 日付を参照
sintuki 辛卯 新暦月の干支 日付を参照
sun 334.9294634 太陽横径 修正ユリウス通日+時間

スポンサーリンク

-万年カレンダー

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

万年カレンダー一覧表の説明

  万年カレンダーに使用している一覧表の説明です。 万年カレンダーシート 万年カレンダーを作成するためのシートです。 「2023」とだけ入力しています。 これは「二十四節気」シートの年と関連 …

エクセルで万年カレンダー作成(2)

(エクセルで万年カレンダー作成(1)) エクセルの万年カレンダー作成は、六曜、祝日、旧暦、二十四節気、雑節を含んでいます。 エクセルで万年カレンダー作成(1)では、準備編と六曜の挿入が終わりました。 …

エクセルで万年カレンダー作成(3)レイアウトの調整

  エクセルで万年カレンダー作成(1) エクセルで万年カレンダー作成(2) エクセルで万年カレンダー作成(1)(2)で祝日、六曜、旧暦、二十四節気、雑用が表示されるようになり万年カレンダーは …

エクセルで万年カレンダーを作りました。

エクセルで万年カレンダーの作成を調べましたがあってもほとんど祝日くらいまでです。 そこで旧暦や六曜、二十四節気、雑節を含む万年カレンダーを作成しました。 (範囲は2010年~2050年までです。) そ …

エクセルで月齢カレンダー

エクセルで月齢カレンダーを作成しました。 年と月を変えると長期間使えます。 月齢は、ユーザー定義関数を作成して求めています。 ユーザー定義関数とは、マクロで自分でオリジナルな関数を作ることです。 詳し …

カテゴリー