和暦から西暦へ変換するユーザー定義関数

和暦を西暦へ変換する関数の使い方

この記事では、Excel初心者の方にもわかりやすく、和暦から西暦へ変換するユーザー定義関数の使い方を紹介します。Excelで和暦を扱う際に、西暦に変換したいというニーズは多いですが、初心者にとっては少し難しい場面もあるかと思います。この記事を読んで、ぜひ簡単に和暦から西暦へ変換できる方法を身につけてください。

Step 1: VBAエディタを開く

まずは、VBAエディタを開いてください。{Alt}キーを押しながら{F11}キーを押すとVBAエディタが開きます。

Step 2: モジュールの挿入

VBAエディタが開いたら、メニューの「挿入」から「標準モジュール」を選択して、新しいモジュールを挿入します。

Step 3: ユーザー定義関数のコードを貼り付け

新しいモジュールが挿入されたら、そこに次のユーザー定義関数のコードを貼り付けます。貼り付け後はVBAエディタを閉じてください。作成される関数は「ConvertJapaneseToWesternEra」となります。

Function ConvertJapaneseToWesternEra(era As String) As Variant
    Dim eraPrefix As String
    Dim eraNumber As String
    Dim numberStart As Integer
    Dim westernYear As Integer
    
    numberStart = 3
    If Len(era) < 3 Then
        ConvertJapaneseToWesternEra = CVErr(xlErrValue)
        Exit Function
    End If
    
    eraPrefix = Left(era, 2)
    
    If numberStart <= Len(era) Then
        eraNumber = Mid(era, numberStart)
        eraNumber = Replace(eraNumber, "元", "1")
        
        ' 全角数字を半角数字に変換
        eraNumber = WorksheetFunction.Text(Val(eraNumber), "0")
        
        Select Case eraPrefix
            Case "大正"
                westernYear = 1911 + CInt(eraNumber)
            Case "昭和"
                westernYear = 1926 + CInt(eraNumber) - 1
            Case "平成"
                westernYear = 1989 + CInt(eraNumber) - 1
            Case "令和"
                westernYear = 2019 + CInt(eraNumber) - 1
            Case Else
                ConvertJapaneseToWesternEra = CVErr(xlErrValue)
                Exit Function
        End Select
        
        ConvertJapaneseToWesternEra = westernYear
    Else
        ConvertJapaneseToWesternEra = CVErr(xlErrValue)
    End If
End Function

Step 4: 関数を使って和暦を西暦に変換する

コードを貼り付けたら、関数を使って和暦を西暦に変換することができます。以下のように、セルに関数を入力して、引数に和暦を指定してください。

もしくは「関数の挿入、分類:ユーザー定義」から選択可能です。引数にはセルを指定することも可能です。

=ConvertJapaneseToWesternEra("平成30")
=ConvertJapaneseToWesternEra(B7)

これで、セルに西暦が表示されます。例えば、上段の式の場合、結果は「2018」となります。

Step 5: さまざまな和暦を試してみよう

関数が正しく動作することを確認するため、さまざまな和暦を試してみましょう。例えば、次のような和暦を入力して、結果が正しいか確認してください。対応可能な和暦タイプは以下のようになります。「大正~令和」「半角数字と元」が対応可能な和暦パターンです。「年」などがセルにある場合は置換など別の機能で削除してください(昭和60年の「年」などは削除しておく)。

  • 大正15
  • 昭和60
  • 平成元
  • 令和3
  • 令和5

関数が正しく動作していれば、各和暦に対応する西暦が表示されます。

まとめ

この記事では、Excel初心者でも簡単に使えるユーザー定義関数「ConvertJapaneseToWesternEra」を紹介しました。この関数を使えば、和暦を簡単に西暦に変換することができます。ぜひ、日々の業務や個人の作業で活用してみてください。

Excelは機能が豊富で、これからもっとたくさんのことができるようになるでしょう。今後もこのブログでは、Excel初心者向けの記事を随時更新していきますので、ぜひチェックしてください。

コメント