懐かしの S&G(Simon & Garfunkel)の名曲
「四月になれば彼女は」
April come she will
When streams are ripe and swelled with rain
May she will stay
Resting in my arms again
五月になれば彼女は居てくれる
また僕の腕の中で眠ってくれるだろう
# かぐや姫の「ぼくの胸でおやすみ」を少しだけ思い出します。
どちらも今の若い人にはピンとこないでしょうけれど・・・
さて、5月になれば日本では元号が変わります。
えっ?それが情けとなんの関係があるのかって?
ま、もうしばらく我慢してお読みください。
4月末日に今の天皇が退位、翌5月1日に今の皇太子が即位。
天皇制について何か書きたいわけではありません。
ITの側面から書きたいと思います。
改元があるので、どこか観点が狂っている現政府のおかげで、
5月連休・黄金週間は何と10日間にもなります。
オリンピック・パラリンピックのため、来年は変則的な休日となります。
祝日の増加、1年限りの引っ越し(別の日に移動)・・・
日記帳やカレンダー業者だけではなく、オヤヂも多少苦労させられました。
かんたんカレンダー (Excel)
(メインのカレンダーは大したことがないのですが、
上部に置いた3か月分のミニカレンダーの色付けがメンドーでした)
かくして、改元の余波はコンピュータ分野にも届くわけです。
Excel で、例えば 2019/1/23 を入力したとします。
表示形式を変えれば、元号表示も可能です。
どうして Excel は 2019年が平成だとわかるのでしょうの?
それはね、チコちゃん、
Windows という基本になるソフトが元号の開始日を覚えているからなんだよ。
Excel はそこを見て判断しているらしいんだ。
もう少し詳しく言うとね・・・
レジストリーという場所に、平成の始まりは 1989年 1月 8日、と書いてあるんだ。
昭和なら 1926年12月25日 となっている。
ちょいと、その中身を見てみようか・・・
・・・チコちゃんモード、終わり・・・
レジストリーには、上図から推測されるように
元号の開始年月日(もちろん西暦表記で)の横に
元号(漢字2文字)_元号の略(漢字1文字)_ローマ字表示_ローマ字の略(1文字)
が書かれています。
ここを見れば西暦年から元号を求めることができます。
Excel がそこを参照しているかを確認するために
2019年5月1日からは「芦田」という元号が、
2020年8月15日から「和来」という元号が始まるようにしてみました。
ビンゴ!
Excel はレジストリーを参照して、元号を判断しています。
さて、いよいよ本題に近づいてきました・・・
あまり寄り付かない日本の MSDN フォーラム。
# 近づかないのは、怖いオネーさんがいらっしゃるから。
最大の理由は、閉鎖的だと感じるから。
オネーさんの話はさておき、閉鎖的と感じるのはなぜか?
一般ユーザー、家庭人、学生などに冷たいように感じます。
ここはITのプロ、開発者、専門家がたむろする場所なんだよ・・・なんて雰囲気。
これに比べ、米国の MSDN Forum では、
宿題の回答を求めるような質問には多少の配慮
(コード自体は示さず、考え方・参照場所を示すなど)はありますが
分からないなら、ま、尋ねてごらん、のような大らかさを感じます。
(回答者にもよりますが・・・)
日本の MSDN フォーラムは、敷居が高いように思うのです。
一見さんお断りは、花街のお茶屋さんだけにしてほしい。
ITは開かれているほうがカッコいいですよね・・・
ま、それはともかく、日本の MSDN フォーラムにこんな質問が挙がりました。
VC++2010で開発。
GetDateFormatEx関数を使用して、
西暦から和暦を取得しているのですが、元号は「平成」の2文字で取得されます。
これを、アルファベットでの頭文字「H」で取得したいのですが、可能でしょうか?
で、前述のレジストリーの話をしました。
GetDateFormatEx 関数への回答ではないのですが、
レジストリーを参照すれば「H」が取得できますよ・・・
レジストリーに元号関連のキーがあることは知っていました。
なので、元々は入っていない慶応や元治などの元号を加えていたわけです。
ただ、レジストリーに元号情報が格納されるようになったのは
Windows 10 になってからだと思っていました。
が、そうではなく、Windows 7 SP1 からだとオネーさんが教えてくれました。
なので、Windows 7、8.1 のレジストリーを確認してみました。
確かに、レジストリーに格納されていました。
このように、回答を出せば、新しい知識が入ってくることも多いのですね。
というわけで、情けは人の為ならず・・・
・・・ようやく本題にオチが付いて、ひと安心。
落ち着くとはここからきているのでしょうか・・・
---------------------------------------------------------
ブログ記事についてのお問い合わせは「質疑応答 掲示板」で・・・
# ご質問にはできる限りお答えしています。
ただし、お名前(本名の姓 and/or 名)を書いていただいた場合に限らせていただきます。
ここをクリックして、北窓舎のサイトにもお立ち寄りください・・・
私は、セルの入力は「2019/5/1」で書式設定のユーザー定義を下記に書き直して対応しました。
"令和元年"m"月"d"日("aaa")"
今年用ですが。
皆さんは、どうやって対応されているのでしょうか。
ユーザーは特に何もしなくてもいいはずです。
というのも、元号が決まったので、マイクロソフトが更新プログラムを出すはずです。
Windows Update を行えば、令和対応できるようになるはずです。
Excel ならセルの書式設定で、カレンダーの種類を和暦にして、表示の種類を選択するだけです。