• ベストアンサー

数値を表示だけ特定の文字列に変換したい。

Excelにて、セルに数値を入れた際に表示だけ特定の文字列に変換したいです。 例えば 0.5 → ”半分” 1  → ”全部” 0~1までの少数第二位までの数値 → ”ちょっと” という形にしたいです。 ただ、別のセルの計算式で値を使うため、表示だけを変更したいのです。 書式設定でできるのかと思っていましたが、うまくいきませんでした。 どなたか教えて頂けないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.2

>0.5と1以外は、どのような数字でも”ちょっと”という文字にしたいのです。 それだけならユーザー定義を [=0.5]"半分";[=1]"全部";"ちょっと" で可能です。 出来るのは2つの条件(=,<,>の組合せ)とそれ以外の3つまでです。 別セルでいいなら、いくらでも出来ますけどね。

tontoko7
質問者

お礼

早速のご回答ありがとうございます。 教えて頂いた方法でうまくいきました! >出来るのは2つの条件(=,<,>の組合せ)とそれ以外の3つまでです。 なるほど。そのような書き方だったんですね! 他にも色々考えていたのですが、このような書き方でしたら何とかなりそうです。 本当にありがとうございました。

その他の回答 (2)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

>1以上の数値は入力はしません。 というのはおそらく「1を超えるの数値は入力はしません。 」の間違い(1丁度も「1以上」に含まれます)ではないかと思います。  それで、 0       →   0 0.5    →  半分 1     →  全部 それ以外   →  ちょっと となりますと、4種類の表示形式を切り替える様にしなければならないという事になりますが、通常のセルの書式設定で切り替える事が出来るのは最大でも 「セルに入力されている数値が1つ目の条件に該当する場合」 「セルに入力されている数値が2つ目の条件に該当する場合」 「セルに入力されている数値が1つ目の条件にも2つ目の条件にも該当しない場合」 の3種類までであり、4種類の表示形式を切り替える事は出来ません。  ですから、その様な表示の仕方を実現するためには、Excel2007以降(Excel2007自体も含む)のバージョンのExcelで、条件付き書式を使ってセルの書式設定をセルの値によって切り替える様にする必要があります。  例えばA1セルに数値を入力した際に、御質問の様な形式で表示される様にするためには以下の様な設定操作を行うと良いと思います。 A1セルを選択   ↓ 選択範囲を示す黒い太枠の内側にカーソルを合わせてからマウスを右クリック   ↓ 現れた選択肢の中にある[セルの書式設定]をクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの中にある[表示形式]タブをクリック   ↓ 現れた「分類」欄において[標準]を選択   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ Excelウインドウの左上辺りにある[ホーム]タブをクリック   ↓ 現れた「スタイル」グループの中にある[条件付き書式]ボタンをクリック   ↓ 現れた選択肢の中にある[ルールの管理]をクリック   ↓ 現れた「条件付き書式ルールの管理」ダイアログボックスの中にある[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択してください」欄の中にある[指定の値を含むセルだけを書式設定]を選択してクリック   ↓ 現れた「次のセルのみを書式設定」の下にある左端の欄が[セルの値]となっている事を確認   ↓ 「次のセルのみを書式設定」の下にある左から数えて2番目にある欄をクリック   ↓ 現れた選択肢の中にある[次の値に等しい]をクリック   ↓ 「次のセルのみを書式設定」の下にある右端の欄に 0.5 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[表示形式]タブをクリック   ↓ 現れた「分類」欄の中にある[ユーザー定義]をクリック   ↓ 現れた「種類」欄の中に "半分" と入力   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択してください」欄の中にある[指定の値を含むセルだけを書式設定]を選択してクリック   ↓ 現れた「次のセルのみを書式設定」の下にある左端の欄が[セルの値]となっている事を確認   ↓ 「次のセルのみを書式設定」の下にある左から数えて2番目にある欄をクリック   ↓ 現れた選択肢の中にある[次の値に等しい]をクリック   ↓ 「次のセルのみを書式設定」の下にある右端の欄に 1 と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[表示形式]タブをクリック   ↓ 現れた「分類」欄の中にある[ユーザー定義]をクリック   ↓ 現れた「種類」欄の中に "全部" と入力   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択してください」欄の中にある[数式を使用して、書式設定するセルを決定]を選択してクリック   ↓ 現れた「次の数式を満たす場合に値を書式設定」欄に =AND(A1>0,A1<1,A1<>0.5) と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[表示形式]タブをクリック   ↓ 現れた「分類」欄の中にある[ユーザー定義]をクリック   ↓ 現れた「種類」欄の中に "ちょっと" と入力   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[適用]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[OK]ボタンをクリック  以上です。

tontoko7
質問者

お礼

ご回答ありがとうございます。 >「1を超えるの数値は入力はしません。 」の間違い(1丁度も「1以上」に >含まれます)ではないかと思います。 ご指摘の通りです。どうにも正しい日本語で伝えられていないですね・・・ 申し訳ないです。 例では、0→0と記載しましたが、実際には0を入力することがないと分かったので、mshr1962さんの方法で問題ありませんでした。 ですが、今度べつの条件で、4種類の表示形式を切り替えなくてはならなくなったので、教えて頂いた条件付き書式で対応しました。 詳しく方法を教えて頂きありがとうございました。 おかげで思い通りに動くものを作ることが出来ました。 今後もなにかありましたら、よろしくお願いいたします。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

>0~1までの少数第二位までの数値 → ”ちょっと” というのがどの様な意味なのか良く解りませんが、もしかしますと例えば 値      表示 0     →   0 0.01  →  0ちょっと 0.09  →  0ちょっと 0.1   →  0.1 0.11  →  0.1ちょっと 0.19  →  0.1ちょっと 0.2   →  0.2 0.49  →  0.4ちょっと 0.5   →  半分 0.51  →  0.5ちょっと 0.99  →  0.9ちょっと 1    →  全部 1.01  →  ちょっと という様にしたいという事なのでしょうか?  それはちょっと無理だと思います。  只、 >0.5 → ”半分” >1  → ”全部” だけでしたらセルの書式設定の表示形式を[ユーザー定義]の [=0.5]"半分";[=1]"全部";G/標準 とする事で実現可能です。

tontoko7
質問者

お礼

ご回答ありがとうございます。 0.5と1は教えて頂いた方法でうまくできました! >どの様な意味なのか良く解りませんが 申し訳ありません。私の説明が足りていませんでした。 以下のような形にしたいと思っているのです。 値      表示 0     →   0 0.01  →  ちょっと 0.09  →  ちょっと 0.1   →  ちょっと 0.11  →  ちょっと 0.19  →  ちょっと 0.2   →  ちょっと 0.49  →  ちょっと 0.5   →  半分 0.51  →  ちょっと 0.99  →  ちょっと 1    →  全部 0.5と1以外は、どのような数字でも”ちょっと”という文字にしたいのです。 1以上の数値は入力はしません。

関連するQ&A

  • 文字列から数値への変換

    セルの書式設定(表示形式タブ)で文字列を数値に変えるのと、 VALUE関数で文字列を数値に変えるのとでは何か違いがありますか? (excel2000です。)

  • 文字列の計算について。。。

    Excelでなのですが、外部データの取り込みをしました。 その時に、文字列で取り込んだ数値を計算したいのですが、 うまく出来ません。 セルの書式設定で数値にしたのですが、計算出来ません。 関数を使って数値に変換すると出来たのですが、 50枚シートがあるものが10ブックあります。 計算したい列もそれぞれのシートでばらばらなので困ってます。 簡単に出来る方法はないでしょうか?

  • 特定の文字列を含む数値の分散計算

    Excelで特定の文字列を含む数値の分散を計算したいのです。 I2~I10にA・Bどちらかの文字が書いてあり、A2:H10には数値が書いてあります。 A~H列の数値について、Aを含むセルの分散とBを含むセルの分散を計算しなくてはなりません。 例えばA列の場合、A2~A10の中でI行にAが書いてあるもののみの分散・Bが書いてあるもののみの分散を計算するといった具合です。

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

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

  • 指定の文字列を指定の数値に変換する方法

    エクセル2002で、指定の文字列を指定の数値に変換する方法を教えて下さい。 下記から、数字を文字列に変換する方法はみつけたのですが、逆ができません。。 [書式(O)]→[セル(E)...]→[セルの書式設定]→[表示形式]→[分類(C)]→[ユーザー定義]内。 [=1]"ABC";[=2]"赤青黄色";"未定" もちろん、関数でもかまわないのですが、適当なものが見つかりません。 例えば、こんな感じに変換。 ABC     →1 赤青黄色     →2 大根にんじん →3 昼休み    →4 放課後   →5 よろしくお願いします!

  • 文字列のセルを数値変換できますか?

    エクセル初心者です。 別のHP等から拾った数値をエクセルに貼っつけて、簡単なデータ計算をしています。 その際拾ったままだと「123円」と「円」がついて文字列になってしまいます。 そのままだと計算できないのです。 「円」だけとって数値変換か、 もしくは、そのまま数値変換してなんとか計算できるような 数式、方法を教えていただけませんでしょうか? どなたか教えてください。

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

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

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

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

  • Excelの数値を文字列にするにはどうしたらいいですか?

    セルの[表示形式]→[ユーザー定義]を利用して #/12 と設定して分数を表示しているセルがあります。 例えば 8/12 という表示になっていても、中身は計算式ですから、数値としては 0.666666・・・ となっている訳です。 これを、表示通りの文字列 8/12 または大文字で 8/12 と変換する方法はありませんか? ぜひ教えてください。 よろしくお願いします。

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

    会社のシステムで吐き出したデータですが セルの書式設定が標準なのに文字列となっています。 マクロを利用して、あるセルの値を別セルへ転記すると、 数字は数値に変換され、先頭の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は消え、桁数が多いと指数表示 となってしまいます。 ちょっと混乱しています。 理屈等教えていただければと思います。お願いします。

専門家に質問してみよう