2012年6月17日日曜日

エクセル関数についてお願いします。かな漢字の文字とローマ英数字が半角、全角混...

エクセル関数についてお願いします。かな漢字の文字とローマ英数字が半角、全角混じって入っているセルから、ローマ字と英数字の文字を抜きとる関数をお知らせください。

『FF式石油暖房機 FF-15GBF』



上記のようなケースです。時にはスペースが入ったり入っていなかったりします。



この場合あとにくるFF-15GBFの部分だけを抜き取りたいのです。

ただし、RIGHT,LEFTだと何文字目かは商品によってもことなります。

また、MIDはスペースがない場合は一律の検索ができません。



他に何か良い方法はありますか?







こんなものでどうでしょうか。半角の英数字と記号(ASCII文字)のみを削除するマクロです。文字コードで動作していますので、MacやWindowsの環境によっては正しく動作しません。ご承知下さい。必ず、コピーを作成してお確かめ下さい。

念のため、マクロの設定方法の説明です。

①Alt+F11でVBA画面を呼び出します。

②メニューの挿入→標準モジュールを選択します。

③下記のマクロをコピーした後、中央の空白の場所に貼り付けます。

④右上の×で閉じます。VBAを終了します。

⑤Alt+F8でマクロの実行画面を呼び出します。

⑥実行したいマクロ名を選択した後、実行をクリックします。



Sub DelAsc()

Dim a, seru

For Each seru In ActiveSheet.UsedRange

If seru.Value <> "" Then

myStr = ""

For i = 1 To Len(seru.Text)

a = Mid(seru.Value, i, 1)

If AscW(a) > 127 Then

myStr = myStr + a

End If

Next i

If myStr = "" Then

seru.Clear

Else

seru.Value = myStr

End If

End If

Next seru

End Sub

0 件のコメント:

コメントを投稿