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

文字列から英数字のみを抽出する関数を教えていただきたいです。

セルの文字列にはひらがな、カタカナ、数字、アルファベット、記号等を含みます。

色々調べてはみたのですが、数字のみを抽出する関数の説明はたくさんありますが、
アルファベットも含むとなると見つかりませんでした。

数字0~9とアルファベット27個の計37個の文字なので、どうにか関数でできると思うのですが。

具体的には下記のようにしたいのです。

●A列
今日iPhone5をauで購入
最新のNEWSを15時~PCで見る 
Moonshotを生み出す「Google X」

●B列にこう表示したいのです。
iPhone5au
NEWS15PC
MoonshotGoogleX


スペースは残ったままでも結構です。

詳しい方、どうかよろしくお願いいたします。

A 回答 (4件)

>数字のみを抽出する関数の説明はたくさんありますが



文字列の中に数字が「一塊だけ」ある場合の説明は多分沢山ありますが、(今回のご質問のように)「文字数字文字数字文字数字」と不定数入り混じってる場合の数式は、全く見つからなかったと思いますよ。

たとえば「英数字が最大限3カタマリまで」といった制約を付けて無理矢理関数をくっつける事は出来なくはありませんが、正直不細工ですし、そもそもあんまり現実的じゃありません。



手順:
ALT+F11を押す
現れた画面で挿入メニューから標準モジュールを挿入する
現れたシートに下記をコピー貼り付ける

public function myf(a) as string
 dim i as long
 for i = 1 to len(a)
 if mid(a,i,1) like "[0-9a-zA-Z ]" then
  myf = myf & mid(a,i,1)
 end if
 next i
end function

ファイルメニューから終了してエクセルに戻る

任意のセルに元の言葉を記入し、
=myf(A1)
のように計算する。
    • good
    • 18
この回答へのお礼

やはり、関数では厳しいようですね。
教えていただいたマクロであっさりと思うようにできました。
心から感謝いたします。
ありがとうございました。

お礼日時:2013/03/19 10:17

行数分-3文字までなら対応可能です。



C列は空白セル
D1セルに
=IF(ISNUMBER(SEARCH(MID($A1,COLUMN(A1),1),"abcdefghijklmnopqrstuvwxyz0123456789")),C1&MID($A1,COLUMN(A1),1),C1&"")
右へオートフィル (80文字までとしてCE1セルまで)
そのまま 下へオートフィル

B1セルに =CE1
フィルハンドルダブルクリック
    • good
    • 2

添付図参照


1.セル C1 に次式を入力して、此れを右方に(A列の最多文字数分だけの列数だけ。此処ではZ列までとした)ズズーッとドラッグ&ペースト(Fig-2)
  =IF(COLUMN(A1)>LEN($A1),"",IF(OR(AND(CODE(MID($A1,COLUMN(A1),1))>47,CODE(MID($A1,COLUMN(A1),1))<58),AND(CODE(MID($A1,COLUMN(A1),1))>64,CODE(MID($A1,COLUMN(A1),1))<91),AND(CODE(MID($A1,COLUMN(A1),1))>96,CODE(MID($A1,COLUMN(A1),1))<123)),MID($A1,COLUMN(A1),1),""))
2.セル B1 に次式を入力
  =C1&D1&E1&F1&G1&H1&I1&J1&K1&L1&M1&N1&O1&P1&Q1&R1&S1&T1&U1&V1&W1&X1&Y1&Z1
3.範囲 B1:Z1 を下方にズズーッとドラッグ&ペースト
「文字列から英数字のみを抽出する関数」の回答画像3

この回答への補足

ご回答ありがとうございました。
A列は60文字程あるので、今回はマクロでやることにしました。
考えていただいて本当にありがとうございました。

補足日時:2013/03/19 10:16
    • good
    • 0

エクセルのセル内の英数字のみを抽出したい


http://detail.chiebukuro.yahoo.co.jp/qa/question …

この回答への補足

試してみましたが、カナが残ったりしてうまくいきませんでした…
ご回答ありがとうございました。

補足日時:2013/03/19 08:03
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A