• 締切済み

一度認識された文字列は他の形式に変えることは不可?

一旦表示形式「文字列」で入力されたものは「数値」扱いに変更しても訂正されないのでしょうか? 各電気会社の単価をHPから転記してExcelで一覧表を作成しているのですが、表内には上記のとおりたとえば280円80銭については、280.8円や280.80円など、表現上でのばらつきがあります。そこで表示形式で小数点を合わせるユーザー定義で「??.??」または「0.00」と設定してみましたが、「0」については「0」のままでした。 そこで「数値」で設定しようと(「小数点以下の桁数」を「2」と入力し、「負の数の表示形式」を適当に(-1234.10などと))してみましたが、やはり結果は変わりません。0は0のままなんです。0.00円になるかと思ったのですが… これは数字をすべてからHP転記したためだと思われます。実際「数値が文字列として保存されています」というエラーも表示されています。 次に一括して「数値」で設定してみたところ、表示形式上では「数値」になっているのですが、実質的には文字列のままです(エラー表示が取れないのは変わりありません)。 入力の際に文字列として認識されてしまいますと文字列は変更することができないのでしょうか。でなければ最初から全部打ち直しです(´;ω;`)

みんなの回答

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.2

適当なセルに1と入力してコピー、文字列から数値に変更したいセルを選択して、「形式を選択して貼り付け」→「演算:乗算」にチェックを付けて<OK>で、数値になりませんか。

frau
質問者

補足

エラー表示の「数値に変換する」で解決しました。 これを設定すると「標準」になりますので、改めて「数値」で設定しました。

全文を見る
すると、全ての回答が全文表示されます。
  • silverakun
  • ベストアンサー率26% (657/2476)
回答No.1

変えたいセルを指定して、右クリック ⇒ 書式の設定 ⇒ 標準 で、 直らないでしょうか?

frau
質問者

補足

標準に直してから数値で設定しても標準のままで数値扱いにはなりません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル 文字列で入力した数字を数値にする

    エクセルで、文字列の設定で入力した数字は、[セルの書式設定]で、数値として設定しても、文字列のままになります。 (セルの左上に、文字列と分かる緑の三角が付いたままになり、表を作ってもグラフの表示は出来ません。) 数値として数字を入力をした後、[セルの書式設定]で文字列にして、再び[セルの書式設定]で数値にすると、数値にはなります。 (この場合、文字列にしても、セルの左上に緑の三角が付かず、このまま表を作ると数値(小数点以下が0の場合は小数点以下が削除されます。)の扱いとなりグラフの表示が出来ます。) 文字列で入力した数字は、数値にはならないのでしょうか? よろしくお願いいたします。

  • 【Excel】セルの書式設定で標準と文字列の違い

    「セルの書式設定」の「表示形式」での「標準」と「文字列」の違いについてです。 「文字列」は「[文字列]は、数値も文字列として扱います。セルには入力した値がそのまま表示されます」 とあります。 しかし「文字列」に数値を入力するとセルの左上に、グリーンの▼印がでてきて、「数値が文字列として保存されています」というエラー表示がでます。 数値も文字列として扱われるはずですがなぜなのでしょう。いちいち「エラーを無視する」にしなければならないので面倒だなと思いますので、今度は「標準」で入力しようと思いますが、 「標準」は「セルの値に対して一般の書式を適用します(特定の書式を指定しません)」 とのことです。一般の書式、特定の書式が何を指すのか分かりません。 文字列が、数値として扱われない理由と、「標準」「文字列」のそれぞれの特徴を教えてください。

  • Excelで数値が文字列になっています

    Excel2010で「このセルにある数値がテキスト形式か、またはアポストロフィで始まっています」という警告が表示されたりして、計算が出来ません。 打ち直ししたり、「エラーチェックルール」で「文字列形式の数値、、またはアポストロフィで 始まる数値」のチェックを外したりして計算は出来るようになります。 「表示形式を変えてもセルの中の値は変化しません。数値データは数値のまま、文字列データは文字列のままです。」とは本当ですか? 本当ならば、数字の保存形式が文字列データかどうかを確かめる方法はありますか? なお、ISNUMBERという関数ではTRUEと出ます。

  • セルの書式が標準なのに文字列にできるのはなぜ?

    会社のシステムで吐き出したデータですが セルの書式設定が標準なのに文字列となっています。 マクロを利用して、あるセルの値を別セルへ転記すると、 数字は数値に変換され、先頭の0は消え、桁数が多いと指数表示になってしまいます。 会社のシステムが吐き出したエクセルはセルの書式が標準なのに 中の数字が文字列でいられるのが疑問です。 会社のシステムの吐き出したデータは Microsoft Excel 2.1ワークシートで 全てのセルの書式設定は「標準」です。 で例えば 12345678901234 は 12345678901234 と表示されていて 「数値が文字列として保存されています」 となっています。(先頭に ' は入っていません) 0101という値のセルでも 表示は0101ですが 「数値が文字列として保存されています」 となっています。(先頭に ' は入っていません) それらのセルの値をマクロとかで別セルに転記すると 転記先では1.23457E+13 と表示されてしまいます。 (0101は101になります。) まっさらなエクセルに自分で手入力すると ・セルの書式設定が標準だと 12345678901234 ↓ 1.23457E+13になります。 ・セルの書式設定が数値だと 12345678901234 ↓ 12345678901234 ・セルの書式設定が文字列だと 12345678901234 ↓ 12345678901234 (ただし 数値が文字列と保存されています と注釈有) なのに会社のシステムの吐き出しデータは セルの書式設定が標準なのにもかかわらず 12345678901234 ↓ 12345678901234 (ただし 数値が文字列と保存されています と注釈有) となっています。 手入力で書式設定が標準の状態でセルに12345678901234 と表示させるには先頭に ' をつける方法しか知りませんが ' が無いのに表示されています。 でもこの該当セルをマクロで別セル(書式設定:標準)に転記すると 1.23457E+13 となります。 またシステムが吐き出したエクセルの同じシート内に 以下のマクロで転記すると ↓ Sub 転記() 行 = 2 Do If Cells(行, 6).Value = "" Then Exit Do If Cells(行, 6).Value >= 10 Then Cells(行, 7).Value = Range("A2") Else Cells(行, 7).Value = Range("A3") End If 行 = 行 + 1 Loop End Sub ↓ このマクロだと A列~F列が書式設定が標準なのに文字列として表示されているのですが 転記先のG列が書式設定が標準であっても 12345678901234 (数値が文字列と保存されています と注釈有) と同じ状態のまま転記できます。 新しいBOOKのシート2に 会社の吐き出しデータをシートコピーした後、 (セルの書式設定:標準だが文字列で表示されている) そのBOOKに登録されているマクロで シート2のセルからシート1のセル(書式設定:標準)に転記すると 数字は数値に変換され、先頭の0は消え、桁数が多いと指数表示 となってしまいます。 ちょっと混乱しています。 理屈等教えていただければと思います。お願いします。

  • Excelの「’」とセルの書式設定(文字列)の違い

    こんばんわ。 Excelの文字列表示について、教えてください。 数字を入力する際に、先頭に「'」を入力すると 文字列として入力することが出来ますが、 数字が入っているセルのセルの書式設定から 「文字列」に表示形式を変更することとの 違いはなんなんでしょうか? やり方は違うけれど、結果は同じということでしょうか? 「'」を入力すると、データが文字そのものに変わり、 表示形式を変更すると、見た目だけ(左揃えになるなど) 文字列のように見えるだけで、データは 数字のままということなんでしょうか?? また、文字列として入力された数字を Value関数で数値に変換してしまうのと セルの書式設定で「数値」に変更するというものも 同じように、違いが良く分かりません。。。 もう、頭の中が「??」だらけです。 違いを教えていただけたら・・・と思います。 どうぞよろしくお願いいたします<m(__)m>

  • Excelのセルの表示形式で、文字列を入力すれば、特定の文字等を前後に加えることはできるか?

    いつも、ご丁寧な回答を有難うございます。  Excel2000を利用しています。  セルの書式設定、表示形式で、文字列を入力すれば、特定の文字等を前後に加えることはできますか?  例えばあるセルに「●●クリニック」「△△医院」と、文字列を入力すると、  「病院:●●クリニック」「病院:△△医院」のように、どのような文字列が入力されても、無条件で「病院:」が接頭するようにしたいのです。願わくば、  「病院:●●クリニック(通院中)」のように「(通院中)」も接尾させたいです。  入力された文字列による条件判断などは行いません。  このような仕組みが、表示形式でできますでしょうか。(入力するのが数値なら可能です。"病院:"#,###"(通院中)"のように) ご回答よろしくお願いします。

  • エクセルで文字列で0.1と入力して・・・

    このままでは計算が出来ないので、それを元の”数値”に戻す事は可能ですか? やはりもう一度初めから(文字数ではなく、数値で小数点以下を表示を設定して)数字を入力していかないと駄目でしょうか? 宜しくお願いします。

  • エクセル セルの表示形式「文字列」だけを抽出したい

    エクセル2007を使用しています。 A列に数字が入力されていますが、そのセルの表示形式は、「標準」「数値」「文字列」とバラバラです。 この「文字列」のセルだけを抽出したいのです。 例えば、関数などを利用して、B列に表示するなど。 よろしくお願いします。

  • 文字列変換マクロ

    小数点以下5桁(B列)をC列に文字列として変換したいです。 (B列は3.62%入力で表示形式をパーセンテージの小数点以下5桁で表示) データ量が多いためVBA作成希望です。どなたか教示お願いします。

  • 【Excel】数値、文字列に適したユーザー定義

    自動で文字列の語尾に文字をつけるのが目的です。 ユーザー定義ではいろいろな形式が作れますが、以下のような形の場合、条件ごと、もっとも適切な形を教えてください。 (1)数値の後ろに「円」 ・桁数は5桁 ・この書式同士で計算できるようにしたい (2)数値の後ろに「齢」 (3)数値の後ろに「kg」 たとえば何に対しても「G/標準」を使う人がいますが、数値に適した、または文字列に適したというように、語尾に自動で何かをつけるにしてもそれに見合う形式があると思います。 また「#,##0"円"」という形についていまいちわかりません。 この設定にして 「1000」と入力すると当然「1,000円」となります。 「1001」と入力すると当然「1,001円」となります。 「1」または「1111」と入力すると当然「1円」「1111円」となります。 しかし「0」または「0000」と入力するといずれも「0円」となります。 正数を入れた場合、入力した数(桁数)どおり反映します。 つまり、「#,##0"円"」の「0」は、0を入力したとき(桁数に関係なく)入れたとき絶対0になります。 試しに「#,#0#"円"」と設定したら「01円」となりました。 「0」を設定したら、「0」のときだけ「0」になるのでしょうか? 「#」と「0」の違いは何でしょうか?

専門家に質問してみよう