セルA2に「3丁目29番45号」という文字列が入力されているとします。
サンプルマクロでは、「三丁目二九番四五号」と変換してメッセージボックスに
表示します。
セルA2の文字列を1文字ずつSelect...Caseステートメントで確認しながら
変換して、確認と変換作業の終わったものをつなぎ合わせています。
Sub Sample()
Dim サンプル文字列 As String
Dim i As Integer
Dim buf As String
Dim 変換後文字列 As String
'A2の文字列を取得する("3丁目29番45号")
サンプル文字列 = ActiveSheet.Cells(2, 1).Value
i = 1
Do While (1)
buf = Mid(サンプル文字列, i, 1) '1文字ずつ抜き出す
If (buf = "") Then 'サンプル文字列の終端の場合ループを抜ける
Exit Do
ElseIf ("0" <= buf And buf <= "9") Then '0〜9の場合
Select Case buf 'ここで変換する
Case "0"
buf = "0"
Case "1"
buf = "一"
Case "2"
buf = "二"
Case "3"
buf = "三"
Case "4"
buf = "四"
Case "5"
buf = "五"
Case "6"
buf = "六"
Case "7"
buf = "七"
Case "8"
buf = "八"
Case "9"
buf = "九"
End Select
End If
'抜き出した1文字(変換後)をつなげ直す
変換後文字列 = 変換後文字列 & buf
i = i + 1
Loop
MsgBox 変換後文字列 '変換後の文字列をメッセージボックスに表示する
End Sub
|