つれづれ電脳記(日くらしPCに向かひて)

つれづれなるままに、日くらしPCに向かひて、その悪戦苦闘ぶりをそこはかとなく書き付くるおじさん。たまに雑談[管理人:goosyun]

つれづれなるままに、日くらしPCに向かひて、デジタル関係の悪戦苦闘ぶりをそこはかとなく書き付くるおじさんです。
たまに雑談してます。連絡・問い合わせフォームは、ページ最下部に置いています。[著者(運営人):goosyun]

(当ブログには本文中に広告リンクが含まれています。)

改元に伴うFormat関数の対応。「平成31年5月1日」を超える値を入れたら?

 昨日、2018年11月18日 の記事
  「Word文書の所定の箇所に、今日の日付を自動入力」
において、和暦日付のことを書きました。

Format(Date, "ggge年m月d日")
というコードを書けば、今日の日付が、和暦(平成〇年〇月〇日)で表示されるという内容です。

その記事中、
ggg」は、「平成」を表しますが、来年は元号が変わるので、この部分を変更することになります。現時点では、「ggg」の部分を何に変えるのか、定まっていません(おそらく)。
の記述部分は、誤った内容のものでした。

 "ggge"というのは、「平成」の書式指定文字ではなく、和暦の元号と年を表示する書式指定文字でした(申し訳ありません。)
 値次第では、「平成」のみでなく、「昭和」も、「大正」も、「明治」だって表示されます。

 試しに、
Selection.Range.InsertAfter Format(1000, "ggge年m月d日")
とすると、Word文書のカーソル位置に、「明治35年9月26日」の文字列が出てきます。

Selection.Range.InsertAfter Format(5000, "ggge年m月d日")
とすると、「大正2年9月8日」と出てきます。

 さらに試しに、未来日付のシリアル値を入れてみました。
Selection.Range.InsertAfter Format(40000, "ggge年m月d日")
とすると、「平成48年11月21日」と出てきます。

 それでは、2019年の改元に伴って、PCユーザが何か作業をする必要があるのか、っていうと、なさそうです。
 VBA(Visual Basic for Application)の側が、改元に対応する必要があるので、その対応作業は Microsoft が行うことになります。
 2109年の改元に伴うVBAの修正は、Windows Updateを介して行われるようなので、それを待つことになります。サポートの切れた、Word2007などに対しては、おそらく更新は来ないでしょう。

 なお、
Selection.Range.InsertAfter Format(40000, "ggge年m月d日")
と、「平成31年5月1日」を超える値を入れたら、もしかしたら
  「新元号〇年〇月〇日」 みたいな文字列
が出てくるんじゃないか、と期待が半分でした。
 しかし、さすがに現時点では未対応です。
 上記のとおり出てきたのは、「平成48年11月21日」でした。

最速攻略 Word マクロ / VBA徹底入門 〔Word 2013/2010/2007対応版〕
Amazon価格¥ 2,894
技術評論社


では、また。

《2019年5月7日追記》
 MS_Officeが新元号「令和」対応した記事は、
  ⇒ こちらをクリック!