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

エクセルで、数値と文字が入力されている列を数値だけにして、不要な文字を削除したいのですが、どのようにすればよいでしょうか?

A 回答 (3件)

ん~、もし、


「最初のアラビア数字から最後のアラビア数字までを取り出す」
ということであれば、数式で処理できないこともないですが…。

以下、A列に元の文字列が入力されているとします。

●数式一発で取り出す場合は、少し長いですが、
 B1セルを、

  =MID(A1,1/MAX(INDEX(ISNUMBER(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))/ROW(INDIRECT("1:"&LEN(A1))),)),MAX(INDEX(ISNUMBER(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))*ROW(INDIRECT("1:"&LEN(A1))),))-1/MAX(INDEX(ISNUMBER(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))/ROW(INDIRECT("1:"&LEN(A1))),))+1)

 として下方にフィル。
--------------------------------------------------
●解説も兼ねて、作業列を使う方法を示すと…

 B1セル:最初の数字の位置を探す
  =1/MAX(INDEX(ISNUMBER(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))/ROW(INDIRECT("1:"&LEN(A1))),))

 C1セル:最後の数字の位置を探す
  =MAX(INDEX(ISNUMBER(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))*ROW(INDIRECT("1:"&LEN(A1))),))

 D1セル:文字数を計算する
  =C1-B1+1

 E1セル:対象文字列を取り出す
  =MID(A1,B1,D1)

 としてB1:E1を下方にフィル
--------------------------------------------------
ただし、上記はあくまで「最初の数字から最後の数字まで」なので、
例えば「○○1丁目23番地××ビル456号」であれば
「1丁目23番地××ビル456」を返します。
文字通りに「数字のみを取り出したい」
つまり、上記を「123456」としたい(?)のであれば、別の話になります。
また、漢数字をどうするかも問題になりそうな気がします。

以上ご参考まで。
    • good
    • 0

「数値と文字が入力されている列を数値だけに」とのことでしたが、



[ANo.1この回答へのお礼]では
 》 「渋谷1-1-1」や「新宿1-1-1○○ビル」となっているのを
 》 「1-1-1」のみにしていきたい
と仰ってます。「1-1-1」は「数値だけ」ではないので、貴方の質問は無理難題だと思います。「-」の代わりに「ー」とか「ー」が使われていれば尚更のことです。
    • good
    • 0

1. 列を選択する。


2. [編集]-[ジャンプ]-[セル選択]で、
 [定数]と[文字]をチェックして、[OK]。
3. [Del]。

質問が曖昧です。もしかしたら、1つのセルに「1個」と
入力されている場合、「1」に変更したいのですか?
また、「削除」はセルの内容をクリアすることですか?
セル自体を削除してシフトすることですか?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

私が質問したい内容は、1つのセルに「1個」と入力されている場合、「1」に変更したいということです。

私が行いたいのは住所の列で「渋谷1-1-1」や「新宿1-1-1○○ビル」となっているのを「1-1-1」のみにしていきたいということです。
セルの数も膨大なので、手入力ではなく、関数などで一括して変換したいのですが…

お礼日時:2008/03/03 01:03

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