- ベストアンサー
エクセルの〔1,500円〕をどうにか数値に変えれないでしょうか。
いつもお世話になっています。 ある銀行取引照会をWEBでDLし、テキスト形式でエクセルに貼り付けています。(HTML形式だと不都合なので) 例えばセルA1が1,500円という文字列になっている場合、数値に変換してA2に入れることは出来ないでしょうか。 最終的にはA列を集計したいのですが・・・。 過去の投稿などを眺めているのですが、やはり文字列を数値に変えるのはムリなんでしょうか・・・。 手入力すれば済むことなのですが、とてもデータが多いので、ひょっとしてと思い投稿しました。 全くできないのでしたら〔できない〕と教えて下さい。 そしたらあきらめます。(^^;
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
じゃ、そのVALUE関数で =VALUE(LEFT(A1,5)) なら「1500」と数値で認識されます。 また、も少し単純に =LEFT(A1,5)*1 でもやはり「1500」と数値で認識されます。 コレは、「文字列として扱われている数字を強引に計算すると、その結果は数値になる」性質を利用したワザ(ってほどでもない)です。 数値がカンマを含めて5桁以上になる場合は =SUBSTITUTE(B6,"円"," ")*1 でOKです。
その他の回答 (5)
- papayuka
- ベストアンサー率45% (1388/3066)
こんにちは。 1.データ範囲を指定してから、置換えで 円 を 空欄 で置換える。 2.セルの書式設定の表示形式をユーザー定義にし、種類ボックスに #,##0"円";[赤]-#,##0"円" と入れればOKです。
お礼
早々のご回答有難うございました。
- kazuhiko5681
- ベストアンサー率49% (79/159)
はじめまして。 データが多いのでしたら、マクロで実行したほうが楽かと思います。 下のコードをコピー・ぺーストするだけで何も手を加えずに自動で実行することができます。 もしご希望でしたらマクロを作ってみたいと思います。その節は、次のことを教えてください。 1.文字列データの入っている列またはセル番地 2.数値として表示したいセル番地 お手数をおかけいたします。よろしくお願いいたします。
お礼
急ぎということで#2の方法で解決させて頂きました。早々のご回答と丁寧なご提案有難う御座いました。
- Hageoyadi
- ベストアンサー率40% (3145/7860)
=SUBSTITUTE(A1,"円"," ")*1 でしたね。失礼しました。
- TTak
- ベストアンサー率52% (206/389)
私がよく使う手は、文字列関数*1です。 "円"の1文字をはずして、数値に変換する例です。 =LEFT(A1,LEN(A1)-1)*1 VBAを使う場合は Sub TEST() st = Range("A1").Value Range("A2").Value = Left(st, Len(st) - 1) * 1 End Sub です。
お礼
早々のご回答有難う御座いました。VBAはちょっと難しそうなので(^^;少しずつ勉強します。有難う御座いました。
はじめまして エクセルを起動してヘルプを見たのですが、VALUE関数というのがあります。 形式 : VALUE(文字列) 文字列は半角のダブルクオーテーション(”)で囲む必要があります。 ただ、「円」の文字は削除しないといけないようです。(試してみました) 詳細はエクセルでVALUE関数のヘルプを参照するといいと思います。 では、この辺で
お礼
早々のご回答有難う御座いました。
お礼
早々のご回答有難う御座いました。早速使わせて頂きます。(ワザ)を有難う御座いました。