「H30.8.1」といった元号表記でエクセルに記入したい
暑いですね。
そして、僕は、今、仕事が溜まりまくっています (-_-;
にも関わらず、なのですが...。週末、仙台に行ってきました。
鹽竈神社(しおがまじんじゃ)という神社で、以下の「鹽竈神社 算額解義」という冊子を見かけ、購入しました。
「算額」とは?
以下は、リンク先の記事から引用。
江戸時代には娯楽としても楽しまれ、日本独自に発展した数学「和算」。
人々は問題が解けたことを神仏に感謝し、神社や仏閣に和算の問題を奉納しました。
その解法を記して、神社や仏閣に奉納する絵馬のことを「算額」と言い、中には問題の解答を付けずに奉納されているものもあります。
鹽竈神社に現存する5面の算額は千葉胤秀(たねひで)ら当時の優れた和算家によって奉納されたもので、江戸時代の優れた算額のひとつに数えられます。
<引用元>塩竈市杉村惇美術館
ということで、購入したのは、小説原作で漫画、映画にもなった「天地明察」でも登場した「和算(日本で発達した算数・数学)」の、未解決(?)のお題に取り組んだ、という同人誌。
僕は別に数学得意じゃなんですが、こういうキワモノコンテンツはつい買ってしまいます (^^;
ところで、今回は、エクセルマクロで日付を入力するときの、やり方について。
以下のような相談をいただきました。
(可読性を高めるため、多少改変)
VBAで顧客管理システムを作成しているところです。
リストボックスから氏名を選んでテキストボックスにデータを表示するところまではできました。
実行ボタン(コマンドボタン)を押すとデータをセルに書き込むようにしたいと思っています。
ところが、生年月日(日付)表示形式「H38.2.17」だけがうまくいきません。
この相談に回答してみます。
ところが、生年月日(日付)表示形式「H38.2.17」だけがうまくいきません。
【以下は、新しいシートを作り、そこで試してください】
単に「H38.2.17」と書き込みたいということでしたら、以下で十分ですね。
Sub sample1()
Range("B1").Value = "H38.2.17"
End Sub
ですが、おそらくそういうご質問ではないのだろうと。
以下のようなプログラムを実行した結果、入力先のセルに「H30.7.30」というような表示をしたいということだろうと推察します。
'先頭の半角「H」は「平成」の意
Sub sample2()
Range("B2").Value = #7/30/2018# '[1]
End Sub
なお、「平成38年」は存在し得ません。
平成が38年まで続いたとしたら、「2026年2月17日」が「平成38年2月17日」になったことでしょう。
ですが、今年5月から元号が令和になったので、令和の時代がしばらく続くとすると、「2026年2月17日」は「令和8年2月17日」です。
生年月日がかなり先の未来の日付というのも、通常の事務仕事ではあまり見られない例です。
あと、いただいたご質問ですと、先頭の「H」が半角ではなく、全角です。
等々考えると本当は「H38.2.17」というのは過去の日付のどこかのことか?ということは気になりますが、そういう問題は無視して、まずは、前記[1]のコードで入力先セルに「H30.7.30」(先頭の「H」は半角)と表示する方法を示します。
結論から書くと、以下のとおりです。
Sub sample3()
Range("B3").NumberFormatLocal = "[$-ja-JP]ge.m.d;@" '[2]
Range("B3").Value = #7/30/2018#
End Sub
[2]の部分では、セルの書式を設定しています。
自動記録をしつつ、ご所望の書式になるよう、エクセルのダイアログからセルの書式設定をしてください。
すると、[2]のコードを作るのに必要な部品が得られます。
自動記録をしながら書式を設定すると、おそらく、以下の類のコードを得られるでしょう。
Sub Macro1()
'
' Macro1 Macro
'
Selection.NumberFormatLocal = "[$-ja-JP]ge.m.d;@"
End Sub
[2]のようなコードは、これを参考に(というか、必要な部分をコピペしてきて)実装します。
なお、以下のマクロを実行すると、セルB4の表示は、「R8.2.17」となります。
Sub sample4()
Range("B4").NumberFormatLocal = "[$-ja-JP]ge.m.d;@"
Range("B4").Value = #2/17/2026#
End Sub
2024年11月20日 21:41
小川 慶一さん
2024年11月20日 21:28
AIユーザさん
2024年11月14日 17:04
小川 慶一さん
2024年11月13日 18:12
AIユーザさん
2024年11月13日 18:11
田中 宏明さん