エクセルで特定の文字列を別の数値にしてグラフ表示

このQ&Aのポイント
  • エクセルを使用して、特定の文字列を別の数値に変換し、グラフで表示する方法について教えてください。
  • エクセルで順位を計測し、日ごとの順位をグラフ化したいのですが、順位が100位以下の場合はセルに「-」と入力しています。この場合、グラフ上では「-」が「0」と解釈されてしまい、正しい順位の下降が表示されません。順位が「-」の場合は自動的に「100」と判断してグラフ表示する方法を教えてください。
  • エクセルで日ごとに計測した順位をグラフに表示する際、順位が100位以下の場合はセルに「-」と入力していますが、グラフ上では「-」が「0」と解釈されてしまいます。順位が「-」の場合は自動的に「100」と解釈してグラフに表示する方法を教えてください。
回答を見る
  • ベストアンサー

エクセルで特定の文字列を別の数値にしてグラフ表示

普段あまりエクセルを使わないので、エクセルの関数もよくわからないレベルです。 エクセル2007を使用しています。 やりたいことは、日毎に計測した順位をグラフ化したいのですが、 順位が100位以下の場合はセルに「-」と入力しています。 (現在は、A列に日付、C列に順位が入っています。) そのままグラフにすると、「-」は「0」と解釈されてしまうようで 図的にはそこだけ順位が跳ね上がっているのですが、 実際は100位以下なので、正しく順位が落ちているように表示して欲しいのです。 単純に、「-」を全て「100」に置きかえれば解決する話ではあるのですが、 それも正しい情報ではないので、データ上は「-」という情報を維持したいと考えています。 そのため、「-」というデータがセルに入っている時は とりあえず「100」と判断し、グラフ表示を行う というようにしたいと考えているのですが、可能でしょうか?

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

>可能でしょうか? いいえ。エクセルのグラフでは,セルの値を読み替えて違う数字として示すといった事は全く出来ません。 >A列日付,C列順位 もしも,あなたが今問題のC列の順位を,誰かが作ってくれた?関数で計算させているとしたら,その関数のセルに細工するのが一番簡単です。 といってもお奨めとしては,仮に 今の式(想像): =IF(RANK(B2,B:B)>100,"-",RANK(B2,B:B)) のように100位より下をわざわざ「-」にして計算しているのだとしたら, 訂正: =RANK(B2,B:B) のように,120位でも230位でもそのまま順位を計算させてしまいます。 グラフの方は100位までしか表示しないようにしてあるので(そうしてないなら,軸の書式設定で最大値最小値を固定して100までしか出さないようにしてください),とりあえずグラフの問題はこれで終わりです。 一方数式を入れたセル範囲を選択,右クリックしてセルの書式設定の表示形式を選び,ユーザー定義で例えば [>100]"-";0 のようにしておくと,100位より下位のセルに「-」が表示されます。

dararan
質問者

お礼

ありがとうございます。 現在のグラフですが、特に計算式などは入っておらず もの凄く単純に「-」と入力してしまっています。 具体的にはキーワード別の検索順位をグラフにしているのですが、 100位以下の場合、調査が面倒なので一律「-」としているのです。 普通に考えて、そんな情報で計算して欲しいというのが そもそもの間違いのようで、 他にお返事をいただいた方たちも、大変失礼しました。 いただいたお返事の”[>100]"-";0”という方法が 一番簡単で分かりやすかったので ベストアンサーとさせていただきました。 他にお返事をいただいた方達も、本当にどうもありがとうございました。 色々と勉強になりました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

エクセルのグラフは、シートに具体的なデータが無いとグラフに書いてもらうわけには行きません。頭や口で言うルールは、エクセルに伝える方法はありません。 1つあるのは非表示のセルや列・行はグラフデータに用いられないことぐらいですか。 ですから(エクセルのグラフの経験が少ないのでこんあ質問をするのでしょうが)、あきらめて、新しい適当なデータをつくり、ルールを具体的な数値に定着化することを考えてください。それには関数式が使える場合があるかもしれないが。

  • akiomyau
  • ベストアンサー率43% (555/1280)
回答No.2

グラフ作成機能だけでは無理なので例えばsheet1にデータがある場合 Sheet2に =IF(Sheet1!A1="-",100,Sheet1!A1) の式を入れ、Sheet1と同じ範囲にコピーします。 この作成したSheet2のデータを元に グラフを作成したらどうでしょうか。

dararan
質問者

お礼

ありがとうございました。 違うシートのデータを基にする、という方法で実現できるのですね。 勉強になりました。

  • f272
  • ベストアンサー率46% (8010/17118)
回答No.1

グラフ表示用に新たな列を作って「-」であれば100,そうでなければC列と同じにします。この列を使ってグラフを書けばよいでしょう。

関連するQ&A

  • Excel 特定の文字列が連続で続いたら非表示

    セル内の特定の文字列が2個以上連続してる場合、連続している文字列を非表示にしたい。 セルに横一列にデータを入力し、=C2&","&D2&","&E2&","& ,,,,, 横の列にはデータを","を入れて文字列を結合したセルを表示させます。 例 データの文字列が1 2 3 4 5と入力されていたら 1,2,3,4,5,,,, と表示され複数セルの入力された文字列が結合した形で表示されます。 これを 1,2,3,4,5 とカンマ","が2個以上連続したらデータの(この場合5)後ろの連続しているカンマを非表示にしたいです。 Excelは2016で、使用できる関数が限られています。 この場合、他の関数の組み合わせで1,2,3,4,5と連続するカンマを非表示にする方法はありますでしょうか。 Excelのシートは添付画像の通りです。 詳しい方いましたら、ご教授下さい。 よろしくお願い致します。

  • エクセルのグラフがうまく描けない

    XP,OFFICE2007ユーザーです。 エクセルで、第1列を日付、第2列は朝のデータ、第3列は昼データ、第4列は夜データ、第5列は平均値として1ヶ月間の表を作成してこれを基に棒グラフを描きました。 ところが、うまくできません。 1) 日付が10日目、つまり10×5セルぐらいだと、毎日4個のデータがグラフ表示され、凡例はちゃんと「朝・昼・夜」と例示されます。 2) ところが、日付が増えて表全体が縦長になると、「凡例」に最右列の平均値がすべて表示されます。そしてグラフエリアにはただ1個のデータが表示されます。 3) この現象は、表が20行ぐらいになると現れます。 4) 1ヶ月のデータをグラフ化したいのです。 たいへん困っております。 出来損ないのグラフJPGの添付がうまくゆかないのでお分かりにくいかと存じますが、 よろしくお願いします。

  • Excel関数で、長さ0の文字列(

    Excelで、両軸対数の散布図(X列,Y列)を作成していますが、X列,Y列ともに、データがない部分があります。 X,Yともに他のデータの関数になっており、 データが不適格の場合、空白セルを入力しています。 しかし、空白セルとして、("")を入力すると、 X,Yの散布図が、散布図にならず、困っています。 具体的には、 IF(Y>0, Log(Y),"") といった感じです。 恐らく、空白セルが長さ0の文字列("")と解釈されているからだと思います。 このセルをDeleteで削除すると、グラフはうまく表示されるようですが、それでは、関数が機能しません。 そこで、関数の出力で、完全な空白セルをセルの値にする方法を教えてください。

  • エクセルで文字列と日付け関数を組合せた時の表示

    いつもお世話になっております。 エクセル2010で、文字列&関数で使用したいのすが、today()関数を組み合わせると日付けが数字になってしまいます。 「今日は 2017/07/10 です」を1つのセルに表示させたいのですがうまく行きません。

  • エクセルグラフで0が表示される

    いつものことですみません。 教えてください。 エクセルで折れ線グラフを描画しましたところ、一番最後の表示が0になってしまうのです。 A列に日付(時間)、B列に数値データがリアルタイムに入ってくるので最後の行を特定できません。適当に広い範囲を指定しています。 B列の数値データの平均値(複数)を計算してC列(3平均値)・D列(5平均値)・E列(9平均値)に置いています。 ちなみにセルC3は、=IF(B3="","",AVERAGE(B1:B3))です。 見た目には、なにも表示がなく、0は入っていないのですが・・・ お忙しいとは存じますが、なにとぞよろしくお願いいたします。

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

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

  • Excel 2007 文字列について

    Excel 2007 文字列について 郵便番号に「-」を入れたいです。 1つのセルに例えば「0001111」とある場合に 「000-1111」と変換したいです。 どのような関数またはマクロを作成すればよろしいでしょうか。

  • 【エクセルに詳しい方へ】エクセル関数で、数値の有無チェック

    エクセル関数で以下のことをしたいので、わかる方お願い致します。 用途は、チェックした日付部分の箇所がいくつあるのか、 そのシートごとに出したいからです。 例えば、5行1列のデータが以下の様な時、数値のみを判断することは可能でしょうか? 6/10 - - 12/5 /  (セルの書式の罫線タブで引ける、斜め線です。)   この例で言えば、数値が入ってるのは2つなので、関数を用いて「-」や「/」は判別せず、2と計算できる関数式は組めますでしょうか? よろしくお願い致します。

  • エクセルの文字列としての数値

    エクセルでは「’」を付けるか、セルを文字列とするかで、数字を文字列として認識させられるようですが、ここで文字列として認識された数値はASCIIにおける、文字列としての数認識コードとやはり同じなのでしょうか?それともエクセル独自のものと解釈した方がよいのでしょうか?

  • Excelで特定文字を数える

    Excelを使っています。 かなりのデータ(行・列ともに)があるのですが、 それぞれのセルの文字列の中にある”・”の数を数えて 別のセルに表示させたいのです。 文字列操作の関数に、文字列の中から特定文字を探し出し その位置を知らせる、というものは見つかったのですが、 上記のような条件に当てはまるものはみつかりませんでした。 どういった方法があるでしょうか。 よろしくお願いします。

専門家に質問してみよう