#411 | 拗促音を変換する方法 | VBA | |
「ァィゥェォャュョ」などの拗促音を通常の文字「アイウエオヤユヨ」に変換する例です。 次のサンプルFunctionプロシージャを使うと、引数strKanaの文字列内に含まれる拗促音が変換されて返されます。 ここでは、いったん引数を半角カナに変換して、1文字1バイトの状態にします。そして、それぞれの文字のASCIIコードをAsc関数で順番に調べ、拗促音の範囲の値であれば対応する文字へとChr関数で変換しています。 Function ConvStrTest(strKana As String) As String Dim intAscCode As Integer Dim iintLoop As Integer '全角カナを半角カナに変換 strKana = StrConv(strKana, vbNarrow) '拗促音を変換 For iintLoop = 1 To Len(strKana) intAscCode = Asc(Mid$(strKana, iintLoop, 1)) If intAscCode >= 167 And intAscCode <= 171 Then Mid$(strKana, iintLoop, 1) = Chr(intAscCode + 10) ElseIf intAscCode >= 172 And intAscCode <= 174 Then Mid$(strKana, iintLoop, 1) = Chr(intAscCode + 40) ElseIf intAscCode = 175 Then Mid$(strKana, iintLoop, 1) = Chr(194) End If Next iintLoop '全角カナに戻す strKana = StrConv(strKana, vbWide) '返り値を設定 ConvStrTest = strKana End Function 実行例: |
|||
|
Copyright © T'sWare All rights reserved |