• ベストアンサー

エクセル 全角英文字のみを半角に!

全角英カナを半角にする関数「asc」は知っているのですが、 英文字のみを半角にする方法はありますでしょうか? ※英文字とカタカナが同セル内に存在しているのですが、カタカナは全角のままで、英文字のみを半角にする事を希望しています。 よろしくお願い致します。

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

  • ベストアンサー
  • ham_kamo
  • ベストアンサー率55% (659/1197)
回答No.2

ユーザ定義関数を作って利用する方法です。 Alt+F11でVBAの画面を開きます。 「挿入」>「標準モジュール」を選択します。左側の画面にModule1というのができます。 右側の画面に、以下を貼り付けます。 Function ASC_A(str As String) As String   Dim i As Integer   For i = 1 To Len(str)     If Mid(str, i, 1) Like "[a-zA-Z]" Then       Mid(str, i, 1) = StrConv(Mid(str, i, 1), vbNarrow)     End If   Next   ASC_A = str End Function Excelに戻って、任意のセルで =Asc_A(A1) とすると、A1の全角アルファベットだけを半角にします。

kinkan0612
質問者

お礼

ありがとうございました。感激しました。VBAを勉強しなければいけませんね。そうすると、こんな事を簡単に出来てしまうとは。。。

その他の回答 (1)

  • hirorin00
  • ベストアンサー率50% (446/884)
回答No.1

はじめまして 力業ですが(手抜きともいう??)… 「置換」で「A」を「A」、「B」を「B」…「y」を「y」、「z」を「z」。 52回繰り返す… 怒られそうですね。

kinkan0612
質問者

お礼

早速の回答、ありがとうございました。 しかし・・・残念ながら、いくつものファイルの適用しなければいけないので、その「チカラワザ」は厳しいです。。。笑。

関連するQ&A

専門家に質問してみよう