いつもお世話になっております。
セル範囲に入力された全角のアルファベットは半角にする方法についてわからない点がありご質問させていただきます。
VBA
1 2Sub CharacterConvert() 3 Dim i As Integer 4 Dim myCell As Range 5 6 Worksheets("英字変換元").UsedRange.Copy 7 Worksheets("英字変換").Activate 8 Range("A1").PasteSpecial 9 Range("A1").Select 10 11 MsgBox "セル範囲に入力された全角アルファベットを半角にします" 12 13 Set myCell = ActiveSheet.UsedRange 14 15'-----<「A」→「A」の変換>----- 16 For i = 65 To 90 17 myCell.Replace What:=String(1, i - 32225), Replacement:=String(1, i), _ 18 MatchCase:=True 19 Next i 20 21'-----<「a」→「a」の変換>----- 22 For i = 97 To 122 23 myCell.Replace What:=String(1, i - 32224), Replacement:=String(1, i), _ 24 MatchCase:=True 25 Next i 26 27End Sub 28
こちらのコードになるのですが
これを実行すると全角文字がすべて半角になると思います。
For i=65 To 90 や For i=97 To 122はASCIIコードで指定していると思っており
またString(1,i-32225)やString(1,i-32224)の「i-32225」の「i-32224)」は文字コードを設置していると推測しています。
質問の内容としてはこの32225や32224というのはどういう意味になるのでしょうか??
こちら書籍からそのまま抜粋したコードになるのですが
i-32225 → 全角大文字
i-3224 → 全角小文字
とだけ記載があり「全角 文字コード」、「全角 ASCIIコード」など入力しても
それらしき答えがヒットしませんでした。
ご教授よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/25 23:51
2020/03/26 00:26
2020/03/26 00:32