kt干支

指定した日付について「年・月・日・時刻」の干支(十干/十二支)を返します。
『#VALUE!』

【 構 文 】

kt干支( 日付, [対象], [読み] )

返却値 ‥‥‥ Variant(String) 型
日  付 ‥‥‥ Variant(Date/String) 型
対  象 ‥‥‥ String 型(省略可、既定値:"¥" )
読  み ‥‥‥ Boolean 型(省略可、既定値:False )

【 返 却 値 】

読み=False ‥‥‥”壬午”という風に漢字名で返ります。
読み=True  ‥‥‥”壬午(みずのえ・うま)”という風に読みが付きます

標準では『十干 & 十二支』で返しますが、「対象」に1文字追加("1" or "2")して
『十干のみ』 『十二支のみ』とする事もできます。

パラメータ指定が不正の場合は[#VALUE!]が返ります。


【 パラメータ 内容 】

日  付 ‥‥‥ 干支を求める日付を、シリアル値または日付文字列で指定します。

※ 新元号「令和」対応になっていない環境でも
    「令和 日付文字列(元年 表記を含む)」を指定可能です。

「対象」によって指定可能な期間が異なります。
    対象: または d  ⇒  1800/1/1以降
               y または m  ⇒  1950/1/1〜2050/12/31

時刻の干支を求める場合は「日付+時刻」のデータを指定します。
以外では、時刻を持つデータを指定した場合には、日付の区切りを時刻の干支に合わせて23時とします
したがって、基本的に「日付」パラメータに『NOW() 関数』は
  使用しないで下さい。『TODAY() 関数(VBAなら Date 関数)』
  を指定するようにして下さい。
 
対  象 ‥‥‥ 1文字または2文字で、求める干支の種類を指定します。
    1文字目:  →  年の干支(1月1日から新年)
             y   →  年の干支(立春(2/4頃)から新年)
                   m   →  月の干支(立春(2/4頃)から新年,月は節〜節)
                   d   →  日の干支
                   h  →  時刻の干支(前日23時〜23時で1日

    2文字目:  1  →  十干のみ
                    2  →  十二支のみ
              省略  →  十干 & 十二支
 
読  み ‥‥‥ 返却値に「読み」を付ける場合には[True ]を指定します。
 

【 解 説 】

干支の[十干と十二支]は下記の通りです。
[十干] (きのえ) (きのと) (ひのえ) (ひのと) (つちのえ) (つちのと)
  (かのえ) (かのと) (みずのえ) (みずのと)    
 
[十二支] (ね) (うし) (とら) (う) (たつ) (み)
  (うま) (ひつじ) (さる) (とり) (いぬ) (い)

  干支は「年・月・日」の各々で別個に持っており、それぞれ「1年・1月・1日」過ぎるごとに、
1つずつ進めて循環していきます。10種と12種の組み合わせなので、干支が再び元に戻る
には60回かかります。そこで、61歳のことを『還暦』という呼び名は、暦が一巡りして元に戻っ
てきたという事から付けられています。

  日については問題ないのですが、年・月の場合には、二十四節気に沿って考える為に、
その「1年・1月」という期間が新暦とは対応しません。

  二十四節気に沿った『月の数え方』では、立春・立夏など二十四節気の内の【節】に当たる
日付で月を区切り、概ね「2月4日頃〜翌年2月3日頃」を1年とします([概ね/頃]と書いたのは、
春分日と同じ様に年によって1日程前後するからです)。

【節】に当たる日付は、概ね下記の通りです(年によって1日程前後します)。
  立春(2月4日) 啓蟄(3月5日) 清明(4月4日) 立夏(5月5日)
  芒種(6月5日) 小暑(7月7日) 立秋(8月7日) 白露(9月7日)
  寒露(10月8日) 立冬(11月7日) 大雪(12月7日) 小寒(1月6日)

  したがって、立春より前の日付では、年の干支は、新暦で言えば「前年」の干支になります。
また、月の干支は立春より前が12月、小寒より前が11月になります。

  ただし、年の干支については、通常呼び習わしている『新暦に沿った1月1日から』という
求め方も用意しています。この場合には「対象」に””を指定して下さい。

『時刻の十二支』は下記のように【23時】で1日を区切ります。
  23:00〜 1:00 11:00〜13:00
  1:00〜 3:00 13:00〜15:00
  3:00〜 5:00 15:00〜17:00
  5:00〜 7:00 17:00〜19:00
  7:00〜 9:00 19:00〜21:00
  9:00〜11:00 21:00〜23:00

  時刻だけから「時刻の十二支」を求めるには、下記の式で充分です。
ただし、時刻だけでは「時刻の十干」を求める事はできません。
      =MID("子丑寅卯辰巳午未申酉戌亥",
                  INT(HOUR(時刻セル + TIMEVALUE("1:00"))/2 + 1), 1)


【 使 用 例 】

=kt干支("2001/1/1", "¥", TRUE)  →  辛巳(かのと・み)
=kt干支("2002/1/1", "¥", TRUE)  →  壬午(みずのえ・うま)
=kt干支("2002/1/1", "y", TRUE)    →  辛巳(かのと・み)
=kt干支("2002/2/4", "y", TRUE)    →  壬午(みずのえ・うま)

=kt干支("2002/2/3","y",TRUE)    →  辛巳(かのと・み)
=kt干支("2002/2/3","m",TRUE)   →  辛丑(かのと・うし)
=kt干支("2002/2/3","d",TRUE)    →  壬寅(みずのえ・とら)

=kt干支("2002/2/3 23:30","y",TRUE)    →  壬午(みずのえ・うま)
=kt干支("2002/2/3 23:30","m",TRUE)   →  壬寅(みずのえ・とら)
=kt干支("2002/2/3 23:30","d",TRUE)    →  癸卯(みずのと・う)
=kt干支("2002/2/3 23:30","h",TRUE)    →  壬子(みずのえ・ね)

=kt干支("2002/2/4","y",TRUE)    →  壬午(みずのえ・うま)
=kt干支("2002/2/4","m",TRUE)   →  壬寅(みずのえ・とら)
=kt干支("2002/2/4","d",TRUE)    →  癸卯(みずのと・う)


【 補 足 】

十干の読み(きのえ、きのと‥‥‥)は、中国の五行(木火土金水)からきています。
(きのえ) 木の兄(
(きのと) 木の弟(
(ひのえ) 火の兄
(ひのと) 火の弟
(つちのえ) 土の兄
(つちのと) 土の弟
(かのえ) 金の兄
(かのと) 金の弟
(みずのえ) 水の兄
(みずのと) 水の弟


Home  kt関数 Top  kt関数 Ref  Back Page  Next Page


角田 桂一 Mail:addinbox@h4.dion.ne.jp CopyRight(C) 2001 Allrights Reserved.