EXCEL VBA でカタカナを全角、英数字を半角にする

Googleで検索しながらあちこちのコードを見て回り、最終的に自分でカスタマイズしたので、ここに貼っておきます。

中途半端なコードだと濁点や半濁点が残ってしまいますが、これはその問題も回避しています。
strOrg = StrConv(strOrg, vbWide) で一旦全角に変換しているところが、その回避策です。

‘カタカナは全角、英数字は半角にするユーザー定義関数
Function AscEx(strOrg As String) As String
 Dim strRet As String
 Dim intLoop As Integer
 Dim strChar As String
strRet = “”
strOrg = StrConv(strOrg, vbWide)
For intLoop = 1 To Len(strOrg)
 strChar = Mid(strOrg, intLoop, 1)If (StrConv(strChar, vbWide) Like “[ァ-ー]”) Then
 strRet = strRet & StrConv(strChar, vbWide)Else strRet = strRet & StrConv(strChar, vbNarrow)End If
Next intLoop
AscEx = strRet
End Function

元のコードは「インストラクターのネタ帳」さんです。

Microsoft Office 365 Solo (最新 1年版)|オンラインコード版|Win/Mac/iPad|インストール台数無制限|メーカー主催3000円キャッシュバック実施中(12/25までposted with カエレバ マイクロソフト 2014-10-17 Amazon楽天市場


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください