こんにちは、hokkyokunです。
業務で数字を漢数字に変換する必要があったので
ちょっと考えてみましたのでシェアします。
具体的には「営業1部」と書かれたデータを「営業一部」に変える必要があったので、
いちいち変えるのは大変だし、今後そういう風に書く人がいたら自動で変えたかったので
関数化しました。
スポンサーリンク
関数のコード
Function ConvertToKanji(ByVal text As Variant)
Dim kanji As String
Dim digits() As String
Dim digit As String
Dim i As Integer
' 漢数字の文字列を配列に格納
digits = Split("〇 一 二 三 四 五 六 七 八 九", " ")
' 数字を文字列に変換して1文字ずつ処理
For i = 1 To Len(text)
digit = Mid(text, i, 1)
'一文字が数字に変換できれば変換、できなければそのまま
If IsNumeric(digit) Then
kanji = kanji & digits(digit)
Else
kanji = kanji & digit
End If
Next i
ConvertToKanji = kanji
End Function
使用方法
使ってみます。
Sub testkanji()
Dim text As String
text = "営業1部"
Debug.Print ConvertToKanji(text)
End Sub
スポンサーリンク