エクセルでパーセンテージを正しく入力する方法

このQ&Aのポイント
  • エクセルでパーセンテージを正しく表示させる方法を教えてください。
  • エクセルデータに入力した値をグラフに表示する際、パーセンテージの表示が正しくされません。
  • 手入力以外でエクセルのセルに正しいパーセンテージを表示する方法はありますか?
回答を見る
  • ベストアンサー

エクセル コピペでパーセンテージを正しく入れたい

作業しているうちに混乱してきてしまいました。 エクセル2010です。マクロは全然わからないので、マクロでしかできない場合はあきらめます。 エクセルデータに打ち込んだ値の表(Aとします)があり それをグラフにするための表(Bとします)がすでにあります。 AからBに値を貼ると、たとえばAで「77.0」という数値がBで「7697.5%」という表示になってしまいます。 Bに手入力をすれば「77.0%」という表示ができるのですが… Bに”%”とセルの設定をする、などの方法で「77.0%」と表示できることはわかるのですが なるべくBに新たな細工をしたくありません。 過去の膨大な資料と状態をそろえておきたいためです。 Aもしくは他にいったん貼るなどで 関数計算するなどして、Bにはコピペするだけで「77.0%」と表示できるようになる方法はありませんか。手入力以外に方法はないのでしょうか。 Aの表は10数列、10数行の表が3程度ですが、同様作業は続く予定なので 手入力以外の方法があれば知りたいです。

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

  • ベストアンサー
  • duckmanx
  • ベストアンサー率57% (4/7)
回答No.2

たぶんAの値は「76.975…」で、書式を小数第一位までと設定して「77.0」と表示されているのですよね? 仮にそのセルがA1だとすると、A2に数式「=A1*0.01」とし書式を小数第三位までに設定します。 A2には「0.770」と表示されるので、そのセルの値をBにコピーすればOKです。

nekomyumyu
質問者

お礼

ありがとうございます。 とてもわかりやすかったです。

その他の回答 (5)

  • chie65535
  • ベストアンサー率43% (8506/19341)
回答No.6

>それではなぜ、手入力だとそのまま「%」がつくのですか。 納得できないでしょうけど「手入力では、そのまま%が付いているのではなく、そう見えるだけ」なのですよ。 表示形式が「パーセンテージ」になっているセルは「手入力すると、自動で100で割った値が実データになって、実データの100倍の数値に%が付いて表示される」のです。 「パーセンテージ」になっているセルに「100」と入力すると、勝手に後ろに「%記号」が付き、「100%」になりますよね? この時、セルに入っている値は、100で割られた「1」になります。でも、表示だけは(見た目だけは)、実データの「1」を100倍した値に「%」が付いて「100%」になるんです。 嘘だと思うなら、そのセルの表示形式を「標準」に変えてご覧なさい。 表示形式を「標準」にすると「100%」って表示が「1」になっちゃいますから。 そういう訳で、パーセンテージになっているセルに「100」と入れると、勝手に「100%」って表示になって、実データは「1」が入力されるのです。 貴方が「100」って打ち込んでも、中身は100にはなってないんです。 「パーセンテージ」のセルに「52%の値」を入れたい時に、頭の中で変換して「0.52」にして入力しないといけない、とかだと不便でしょう? だから「52」と入れると「0.52」が実データとして入力されて、表示が「52%」になるようになっているのです。 あと、他の回答のように、貼り付けの時に、演算で「/100」を指定して、100で割った値を貼り付けるのも手ですが、毎回貼り付けを繰り返すのなら、毎回、演算を指定するのは面倒です。 なので「A表を100で割った値を表示する作業用の表」を作っておいて、毎回その作業表からコピーして値の貼り付けをした方が楽です。

nekomyumyu
質問者

お礼

なるほど! とてもよくわかりました。そんな親切機能となっているのですね。 ご説明がわかりやすかったので、納得しました。 丁寧にご説明いただいたのでBAとしたいのですが、 検索で来られた方が、方法がすぐわかるように 方法としてシンプルな2番目の方にBAを入れたいと思います。 作業の表を作るパターンですね。(シート全体ではありませんが…) ですが、本当にありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんにちは! 横からお邪魔します。 すでに入力済みのデータ(数値)を%表示させた場合に困っていらっしゃる訳ですよね? 実データを 1/100 にしたいという解釈で・・・ どこか使っていないセルに 100 と入力 そのセル上で右クリック → コピー → %表示のセルを範囲指定 → 右クリック → 形式を選択して貼り付け → 「除算」を選択しOK こんなんではどうでしょうか?m(_ _)m

nekomyumyu
質問者

お礼

ありがとうございます。この方法もいいですね。 お返事遅くなりすみません。 午前中の方の説明で了解しました。 二番目の方がわかりやすく、BAを入れたいと思っていますが、 質問もしておりましてまだ締め切れません。 この後に書かれる方も 申し訳ないのでご回答いただかないようお願い致します。

  • basic_gg
  • ベストアンサー率50% (14/28)
回答No.4

>Bにはコピペするだけで Bにコピペしてから細工するほうが分かり易いと思うのだが、 (7697.5%が77.0%に変化するから) >Aもしくは他にいったん貼るなどで 元データは別に保存してあるとし、Aを変化させます。 >エクセルデータに打ち込んだ値の表(Aとします)があり Aはエクセルの表中のデータですから 1)Aの近くの"書式設定"が"標準"のセルに100と打ち込んで、 "セルの書式設定"を "パーセンテージ"の"小数点以下の桁数"を1にする。 (100が10000.0%に変化する) 2)10000.0%と表示しているセルをコピーする。 3)Aの値の列(or行)を選択する。 4)選択したセル範囲の上で右クリックし、 "形式を選択して貼り付け"を指定し、 "演算"の"除算"を選択して"OK"をクリックする。 5)選択範囲をBにコピペする。

nekomyumyu
質問者

お礼

ありがとうございます。 お返事遅くなりすみません。 午前中の方の説明で了解しました。 二番目の方がわかりやすく、BAを入れたいと思っていますが、 質問もしておりましてまだ締め切れません。 この後に書かれる方も 申し訳ないのでご回答いただかないようお願い致します。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

A表の値をB表にコピーして貼り付けるための式でA表の値を100で割った値をB表に表示させるようにすればよいでしょう。 別の方法はB表の値が表示されているセル範囲を選択して右クリックし「セルの書式設定」の「表示形式」で「ユーザー設定」を選択し種類の窓には 0"%" と入力すればよいでしょう。

nekomyumyu
質問者

お礼

ありがとうございます。 お返事遅くなりすみません。 ひとつめは同じ方法ですが、 二番目の方が図もありわかりやすく、BAを入れたいと思っています。 申し訳ありません。 二つ目は本文で私が「その方法はとりたくない」と言っております。 申し訳ありません。

  • chie65535
  • ベストアンサー率43% (8506/19341)
回答No.1

>AからBに値を貼ると、たとえばAで「77.0」という数値がBで「7697.5%」という表示になってしまいます。 はい。それが「正しい動作」です。 表示形式の「パーセンテージ」と言うのは「0~1の値を0%~100%で表示する形式」です。 なので「0.5が50%、0.999が99.9%、2.0が200%」のように、100倍した値に「%」が付きます。 元の値が「76.975」であれば、100倍して%が付くので「7697.5%」になるのが当たり前です。 >Aもしくは他にいったん貼るなどで 関数計算するなどして、Bにはコピペするだけで「77.0%」と表示できるようになる方法はありませんか。手入力以外に方法はないのでしょうか。 ありますよ。 Aの表を参照して、値を100分の1にする、作業用のシートを作って下さい。 Aの表がSheet1の、A1~A453に入力されているとしたら、作業用シートのA1に =Sheet1!A1/100 と入力して、A1をA2~A453にコピーします。 すると、作業用シートのA1~A453に、Aの表を100で割った値が出来ます。 作業用シートの100で割った値の方のA1~A453セルを「編集」⇒「コピー」でコピーして、B表に「編集」⇒「形式を指定して貼り付け」⇒「値」で貼り付ければ、みごと「77.0」が「77.0%」になって貼りつきます。

nekomyumyu
質問者

お礼

ありがとうございます。 丁寧に説明をいただいたのですが 正直かえってよくわからない部分が… >なので「0.5が50%、0.999が99.9%、2.0が200%」のように、100倍した値に「%」が付きます。 それではなぜ、手入力だとそのまま「%」がつくのですか。

関連するQ&A

  • エクセルのパーセンテージを求める計算

    エクセルでパーセンテージを求める計算をしたいのですが、 下記のような数値を求めるにはどのような式を入力したらよいでしょうか? 求めたい数値は、 「セルA1に対してB1の数値が、A1の値と比べて何パーセント増減したか。」 です。 =IF(ISERROR(B1/A1),"",B1/A1)-1 っていうのは間違っていますよね? また、分母もしくは分子が0になる場合に、 「#DIV/0」を表示させたくない場合はどうしたらよいでしょうか? 初心者で申し訳ありませんが、よろしくお願い致します。

  • エクセルでこんな数列を記入したい

    エクセルでこんな数列を記入したいのですが、どのようにすればよいでしょう? A列 B列 1  1 1  2 1  3 1  4 2  2 2  3 2  4 3  3 3  4 4  4 要するに1~4の総当たり表の結果を縦(行)に記載します。 実際は100までありますので、手作業は非常に苦痛です。 何か簡単な方法はありませんでしょうか?

  • Excelの表作成について

    はじめまして。 上司に頼まれまして営業所と従業員についての管理表をExcelで作っております。 そこで是非ご教示いただきたいのが、添付ファイルのA型の表をB型の表に効率的に変換する方法です。 最初は手作業でやっておりましたが、データが膨大で、この調子だと期日までに間に合いません。 何とぞよろしくお願いいたします。

  • エクセルの日付の計算(という表現でいいのかな?)

    エクセルの初心者です。よろしくお願いいたします。 エクセルで月単位の集計表を作ろうとしています。毎月25日から翌月の24日までの間のある値を表に書き込むというものです。 いままでたまったデータは十年分くらいあります。月にすると120ヶ月分となるのですが、いちいち日付を打ち込むのが大変なので、エクセルの関数やマクロなどを使って効率よくできないものでしょうか。 具体的には・・・      A       B     DATA 1  1994/01/25  1994/02/24  1000 2  1994/02/25  1994/03/24  2000 3    ・       ・     ・ 4    ・       ・     ・ 5  2003/01/25  2003/02/24  3000 というような表で、A1は初期値なので入力するとして、あとのB1、A2、B2・・・は自動的に表示させるようにしたいのです。 よろしくお願いいたします。

  • Microsoftマイクロソフトのexcelエクセ

    Microsoftマイクロソフトのexcelエクセルについて教えていただきたいです。 表を作成したのですが、少し複雑になってしまいました。そのため、計算値が更新前の値のままになってしまいます。 A1に数値を手入力して、B1にA1+B2の値を出力、 C1=B1+C2 D1=C1+D2 E1=D1+E2 、、、という事をしています。そのため、初期値をいじると他の全てのセルの値が変わるはずなのですが、変わりません。 一つ一つセルをポイントし、エンターキー押さないと反映されません。 この作業結構面倒くさいんですよ、、膨大なセルに計算式入れてあるので、、 そこで一括で更新する方法ってないですか? マクロVBAでも構いません。教えてください。

  • 連続印刷のマクロをおしえてください。

    お世話になります。 Excel初心者でマクロ経験は0です。 似たような質問はあるのですが、どこから手を付けていいのかわからず、また時間も無く新たに質問させていただきます。 表1 住所録 A列 通し番号がふってあります B列 送付先 C列 郵便番号 ... というような感じです。 表2 Vlookup関数でB2に表1のA列の値をコピペするとB3、B4、B5等に表1の値が表示されます。 大量に印刷するので、表2 B2に表1のA列の値を自動で入力できるようにしたいです。 A1からA100、A101からA200というように範囲指定できれば有難いです。 マクロはどこのボタンを押して始める というところからご教示をいただけましたら有難いです。 宜しくお願いいたします。

  • エクセルにおけるコピペ

    こんにちは。 エクセルで、九九の表を作成していて思ったのですが、コピペで作成すると累積乗算されてしまい、上手く作れません。       B1  B2  B3  B4  B5  B6  B7  B8  B9         1   2   3   4   5   6   7   8   9         A2=1   1     2   6    24   120  720 A3=2   2 A4=3   6 A4=4   24 A6=5   120 A7=6  720 A8=7 A9=8 A10=9 B2に、B2=A2*B1と入力してコピペした結果、このように、セル自体も累積加算されてしまいます。 行演算・列演算、それぞれセルA2・B1で固定したいのに、すぐ上のセルが演算に使われてしまいます。 九九くらいなら、コピペしなくてもそんなに苦にならないのですが、簡単に計算する方法があるんじゃないかと思い、質問させていただきました。 詳しい方よろしくお願いいたします。

  • エクセルで0を表示させたくない

    よろしくお願いします。 エクセルのファイルAとBがあるとします。AとBでそれぞれ表を作成しているのですが Aの方では、縦方向に数字を入力し、最後にオートSUMで合計するという列が数列並んだ表です。 Bの方はAの合計のセルが表の各々のセルに表示されるようリンクがかけてあります。 ここで、Aの表で列によっては合計が0の場合が出てきます。 そのときに、Bでは0は表示しないようにしたいのです。 可能でしょうか? わかり難い説明で申し訳ないのですが、補足は致しますので、お助けください。よろしくお願いします。

  • Excelでデータ加工

    Excel2000です   A  B 1 100 120 2 300 3 50 80 4 150 5 250 6 200 300 と表があるとします このA列の空白にB列の値をコピーしたいと考えています 【完成形】   A  B 1 100 120 2 300 300 3 50 80 4 150 150 5 250 250 6 200 300 オートフィルタで空白を抽出し、コピー&ペーストしてみましたがうまくいきませんでした データは5000件ぐらいありますので、手作業ではなく、できれば関数や機能で行いたいのですが(マクロに疎いので)何かいい方法はありませんでしょうか?

  • エクセル 指定した期間の表示

    エクセル2000で簡単な勤務表を作っています。 20日が締め日なので  ・A1に日付を手入力するとC1には自動で翌月の20日が表示される方法 ・A2~A**にはC1に表示された日にちが自動で入力(表示)される方法 を教えていただきたいです。  A   B   C   D  1 4/21 ~ 5/20 2 日付 曜日 出社時間  3 4/21 4 4/22 *省略* **5/19 **5/20 マクロは、始めたばかりなので自動記録しか分かりません。 関数で出来るようであれば、そちらでお願いします。

専門家に質問してみよう