昭和●●年って西暦で何年?調べるの結構面倒だと思ったことありませんか?
令和の時代になり和暦を使わずに西暦を基本に使うようになっていますが、簡単に変換できるフォームがあると便利なので、作り方をご紹介します。
和暦から西暦変換フォーム
まず始めに、全ての事をマクロ上で行う事もできるのですが、とても複雑なVBAが必要になるので、ここでは体裁は無視してエクセル関数とユーザーフォームを使って、比較的簡単に作ってみました。
ワークシート上の準備
繰り返しになりますが、今回は体裁は無視なので、まず始めにエクセルワークシート上に和暦と西暦の表を作ります。
薄い青色のセル(A2とB2)はユーザーフォームから転記されるデータで、薄い緑色にはエクセル関数が入っています。
セルA4から下に和暦を入力していきます。アナログですが、昭和元年~令和82年(西暦2100年)まで入力してあります。
セルB4から下に西暦を入力していきます。1926年から2100年まで入力していますが、和暦が変わった年(昭和64年・平成元年)と(平成31年・令和元年)はそれぞれ西暦が入力されています。
セルC2には、ユーザーフォームから転記された元号(セルA2)と年(セルB2)を結合させる数式をいれるので、このようになります。
=A2&B2&B1
A2は和暦、B2は年数、B1は年を&で値を順番にくっつけただけなのですが、もちろんVBAでやることも可能ですが、ここでは省略します。
C4は結合された「平成5年」をA5からB181の中から探して表示するVLOOKUP関数を使って表示させていますが、この説明もここでは省略します。
これで、ワークシート上での作業は終了です。
エクセルVBAの準備
和暦を入力して西暦を表示させるには、自分自身で自由にパーツを配置して作ることができるのでとても便利なユーザーフォームを使用します。
ここでは、オプションボタンで元号を選択して、テキストボックスに年数を入力してから、コマンドボタンを押して西暦をラベルに表示させるという方法をとります。
例えば平成5年の西暦を知りたければ、「平成」にチェックして「5」テキストボックスに入力して「変換」ボタンを押せば、「西暦」と書いてあるラベルが「1993」と表示が変わります。
では、そのようになるようにコマンドボタンにVBAコードを書きこみましょう。
Private Sub CommandButton1_Click()
If OptionButton1.Value = True Then
Range(“A2”).Value = “昭和”
ElseIf OptionButton2.Value = True Then
Range(“A2”).Value = “平成”
ElseIf OptionButton3.Value = True Then
Range(“A2”).Value = “令和”
ElseIf OptionButton4.Value = True Then
Range(“A2”).Value = “予備”
End If
Range(“B2”).Value = TextBox1.Text
UserForm1.Label4.Caption = Range(“C4”).Value
End Sub
- コマンドボタン1をクリックしたら
- もしオプションボタン1を選択したら
- セルA2に「昭和」と転記する
- そうではなくオプションボタン2が選択されたら
- セルA2に「平成」と転記する
- そうではなくオプションボタン3が選択されたら
- セルA2に「令和」と転記する
- そうではなくオプションボタン4が選択されたら
- セルA2に「予備」と転記する
- IFステートメント終了
- セルB2の値はテキストボックス1の値を記載する
- ユーザーフォーム1のラベル4の表示文字はセルC4の値を記載する
- マクロ記述終了
これで完成です、体裁無視すれば簡単にできます。
もちろんItemを使って、VBAコードを記載すればワークシートは白紙で綺麗なままなので、体裁は良くなりますが大変ですよ。
関連記事
-
日付・時刻関数
エクセルの時刻表示を0:00ではなく24:00にする方法
スケジュールやシフト管理でエクセルで出勤時間や退勤時間などでは時刻をセルに入力しますが、24:00と入力したのに自動的に0:00と表示が変わってしまって、勤務時間の計… -
エクセル関数
エクセル関数で生年月日から現在の年齢を自動表示させる方法
エクセルの顧客リストや住所録などで生年月日は記載されているけど、年齢までない場合にわざわざ計算するの面倒だと思った事ありませんか? そこで、今日現在の日付を自… -
日付・時刻関数
今日の日付を取得して指定したセルに表示させるエクセル関数
エクセルで今日の日付をセルに入力するのに、わざわざカレンダーを見て手入力すする作業が面倒だと思ったことはありませんか? こんな無駄な作業をしている時間があった… -
日付・時刻関数
エクセルで昭和・平成・令和を西暦に変換するフォームを作成方法
昭和●●年って西暦で何年?調べるの結構面倒だと思ったことありませんか? 令和の時代になり和暦を使わずに西暦を基本に使うようになっていますが、簡単に変換できるフォ… -
データの操作
エクセル関数とVBAを組み合わせて商品期限切れ通知を表示する方法
小さな会社や個人では、アプリや専用ソフトを使って商品管理とかはコストが見合わず、エクセルで商品管理していませんか? このエクセルによる商品管理でリストの中にあ… -
エクセル関数
エクセル関数とVBAで和暦西暦対応カレンダー作成
エクセル関数を基本として作成し、ユーザーフォームで日付選択ができるようにすることで複雑なマクロが分からなくても、自由にカスタマイズして自分のエクセルに組み込… -
ユーザーフォーム
Excel-VBAタイマー機能で数秒後にユーザーフォームを表示させる方法
エクセルを使って成績などを入力して作成した成績表で、入力漏れがなかったかどうかなどをチェックするのに数秒間だけ指定したページや範囲を表示させたいと思ったこと…
紅葉スポット
-
ときわ路パスで行ける茨城県人気紅葉スポット
【茨城県内の紅葉人気ランキング】 関東地方で紅葉名所といえばなんといっても日光ですが、紅葉シーズンになると平日でもいろは坂は大渋滞なのに休日ともなると日光駅周… -
開業90年を超えても現役の日光いろは坂にある明智平ロープウェイ
日光駅や日光東照宮がある市街地と奥日光を結ぶいろは坂の終盤にある位置する「明智平」は、トイレや売店があるドライブインと呼んだ方がいい所なのですが、日光エリア… -
埼玉県第1号のダム「有間ダム」によりできた名栗湖畔の鏡面紅葉へ
初!と付くものはやっぱり宣伝したい、そして四季折々の景色が見られる自然絶景スポットならばなおさらですよね。 埼玉県飯能市にある名栗湖へ飯能駅からバスで行くこと… -
日光白根山ロープウェイで標高1400mから2000mの紅葉遊覧へ
丸沼高原といえば首都圏から日帰りで行くことができるスキー場ですが、秋の紅葉シーズンになるとひと足早く木々が色づき、リフトから山頂へ向かえば紅葉絶景の景色が広… -
白いアーチ橋の六方沢橋と紅葉へ日光駅からバスで滞在時間20分
霧降高原にある六方沢橋バス停から歩道を300mほど歩くと六方沢橋に行くことができ紅葉絶景が眼下に広がり、さらに400m歩いた六方沢展望台では遠くのダム湖や今市市街を… -
那須塩原駅からバスで紅葉名所のもみじ谷大吊橋へ滞在時間60分
【紅葉見頃】10月下旬~11月中旬 塩原ダムに架かる大吊橋の周辺にもみじが植えられていて紅葉の季節になると真っ赤に染まるので、もみじ谷大吊橋という名で那須塩原市…