プロが教えるわが家の防犯対策術!

全角英カナを半角にする関数「asc」は知っているのですが、
英文字のみを半角にする方法はありますでしょうか?

※英文字とカタカナが同セル内に存在しているのですが、カタカナは全角のままで、英文字のみを半角にする事を希望しています。

よろしくお願い致します。

A 回答 (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の全角アルファベットだけを半角にします。
    • good
    • 1
この回答へのお礼

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

お礼日時:2006/12/07 13:51

はじめまして



力業ですが(手抜きともいう??)…
「置換」で「A」を「A」、「B」を「B」…「y」を「y」、「z」を「z」。
52回繰り返す…

怒られそうですね。
    • good
    • 0
この回答へのお礼

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

お礼日時:2006/12/07 13:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!