こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

-広告-

解決済みの質問

Excel VBA セル選択

Sub 全角()
Dim i As Long, buf As String
For i = 1 To Len(ActiveCell.Value)
If Mid(ActiveCell.Value, i, 1) Like "[ア-ン]" Then
buf = buf & StrConv(Mid(ActiveCell.Value, i, 1), vbWide)
Else
buf = buf & Mid(ActiveCell.Value, i, 1)
End If
Next i
ActiveCell.Value = buf
End Sub
このコードだと一つのセルしか変換できません。
選択した範囲全部を変換できるようにしたいです。

投稿日時 - 2016-01-07 14:26:28

QNo.9107565

暇なときに回答ください

質問者が選んだベストアンサー

以下のようにして下さい。

Sub 全角()
Dim i As Long, buf As String
Dim ac As Range
For Each ac In Selection
buf = ""
For i = 1 To Len(ac.Value)
If Mid(ac.Value, i, 1) Like "[ア-ン]" Then
buf = buf & StrConv(Mid(ac.Value, i, 1), vbWide)
Else
buf = buf & Mid(ac.Value, i, 1)
End If
Next i
ac.Value = buf
Next ac
End Sub

プログラム内の「ア」と「ン」は半角カナに直して下さい。このサイトは半角カナを書くと勝手に全角カナに書き換えてしまいます(貴方の質問文も、勝手に全角カナに直されてしまっています)

投稿日時 - 2016-01-07 14:49:57

お礼

ありがとうございます。
やりたかったことが出来ました。

投稿日時 - 2016-01-07 15:10:27

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

-広告-
-広告-
-広告-
-広告-