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

CSVデータをExcelで展開しているのですが、金額が入力されている列について、数値の先頭に空白が5~6個程入っており、その空白を全て削除し、金額の合計を求めたいと思っています。

以下の関数を試したのですが、先頭の空白が2個削除できないままです。

(1)=SUBSTITUTE(SUBSTITUTE(A1," ","")," ","")
(2)「=TRIM(A1)」

(2)⇒(1)、(1)⇒(2)を試して見ましたが駄目でした。

全てを削除する方法についてご存知の方、ご教示の程、お願いいたします。

A 回答 (7件)

=VALUE(CLEAN(A1))



でもダメでしょうか?CLEANで見えない何かを削除(スペースは残る)し、VALUEでスペースを削除。
または、TRIMも加えてみるのも良いかも知れません。

=VALUE(TRIM(CLEAN(A1)))
    • good
    • 0

 次の様な関数で、数値に変換する事が出来ると思います。



=(0&CLEAN(TRIM(SUBSTITUTE(A1,CHAR(160),))))+0

 又、例えばA1~A10の合計を求める場合には、A1~A10の範囲内に、数値に直す事が出来ない文字列が入力されているセルが無い限りは、次の様な関数で、合計値を求める事が出来ると思います。

=SUMPRODUCT((0&CLEAN(TRIM(SUBSTITUTE(A1:A10,CHAR(160),))))*1)
    • good
    • 4

回答は既に出尽くしていますが、参考までに別の面から


A列にデータがあるとして、空きの列にB列なら
=CODE(MID($A2,COLUMN()-1,1)) と入れて右方向に式を複写する。
COLUMN()-1の1は式を入れる列によって、最初が1になるように修正すること。
>先頭の空白が2個削除できないままです
で本当に空白(半角)で32、全角なら8481か、可視化して確めて、考えてください。
    • good
    • 0

=VALUE(A1)



これでできました。
VALUEが文字列を数値化する関数です。TRIMを使わなくても先頭のスペースを消してくれました。
    • good
    • 0
この回答へのお礼

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

教えていただいた=VALUE(A1)を試しましたが駄目でした。
恐らく空白以外の何かがあるかと思います。

お忙しい中、ご回答ありがとうございました。

お礼日時:2011/05/16 13:10

=TRIM(A1)


だけでは、結果は文字列のままです。
=SUM(TRIM(A1))
で、数値になります。

なお、全角スペース、半角スペース以外の「見えない文字」が入っていた場合は、TRIMやSUBSTITUTEでは対処できません。解決するには、その「見えない文字」の正体が何なのか調べる必要があります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
=TRIM(A1)、=SUM(TRIM(A1))を試しましたが、駄目でした。

おっしゃる通り、見えない文字をつきとめたいと思います。

お忙しい中、ご回答ありがとうございました。

お礼日時:2011/05/16 13:08

あるセルに1を入力してコピーし、その後に該当するセルの範囲を選んで右クリックし、「形式を選択して貼り付け」で「乗算」にチェックをして貼り付けてはどうでしょう。

    • good
    • 0
この回答へのお礼

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

試しましたが、1になってしまいました。

他の方法を試してみますね。

お礼日時:2011/05/16 13:13

空白で無いなら、見えない記号でしょうか?


CLEAN関数は、試されましたか?
http://pc.nikkeibp.co.jp/pc21/tech/excel36/31/
    • good
    • 0
この回答へのお礼

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

教えていただいたページの関数を試しましたが駄目でした。

他の方法をあたってみます。

ありがとうございました。

お礼日時:2011/05/16 13:15

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