• 締切済み

エクセル

セルA1に0より大きい数を入力したら、セルB1に、改善という文字を青字で表示し、0より小さい数は、悪化という文字を赤字で表示する。これを関数を使ってできますか?

みんなの回答

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.5

値が0だった時どうするか が、書かれていないので なんなのですが、 =choose(sign(A1)+2,"悪化","","改善") 如何でしょうか? お役に立てたならなら幸いです。 P・s・ Sign関数は正とゼロと負を見分け1と0とー1で教えてくれます。 ところで、 正とは「0より大きい」と、言う意味 負とは「0より小さい」と、言う意味 ゼロはゼロのままですから お求めになったもの、そのままのように思います。 -1、0、1で返す訳ですから、 2を足せば自ずと、「1」「2」「3」に変ります。 こうなればChoose関数に掛けて選ばせれば良い。 と、いうことになると思います。 お好みで  ・数値以外が入力された場合、  ・未入力の場合 の処理を 追加頂けると、 よりよいものになると思います。

noname#195146
noname#195146
回答No.4

 #2です。  ANo.3 keithin様の方法を、やってみて感激しました。そんなに簡単にできたんだ(今まで無駄なことをしていたorz)。  私の回答などより、遥かに優れています。素晴らしいです。 P.S.  ちゃんと調べてなかったことを反省し、Excelのヘルプを見てみると、おお、ちゃんと書いてあった。 ----------------------------------  表示形式で色を設定するには、色の名前 (以下の 8 色) のいずれかを角かっこ ([ ]) で囲んで入力します。これらの色コードは書式部分の先頭に指定する必要があります。   [黒] [青] [水] [緑] [紫] [赤] [白] [黄]  書式記号は、最高 4 つのセクションまで指定できます。各セクションはセミコロンで区切られ、それぞれ正の数、負の数、ゼロの値、および文字列に対する表示形式を定義します。  2つのセクションだけを指定した場合、最初のセクションは正の数とゼロの表示形式になり、2番目のセクションは負の数の表示形式になります。1つのセクションを指定した場合は、その表示形式がすべての数値に適用されます。セクションを省略する場合は、そのセクションの後ろのセミコロンだけを入力します。 --------------------------------  試しにB1セルの書式をユーザー設定にして、以下のようにしてみました。 [青]"改善";[赤]"悪化";[黒]"現状維持";[黄]"未定"  むむ、空白セルは0扱いのようで「現状維持」になってしまい、「未定」は出せないようです。A1セルに何か文字列(スペースでもいい模様)入れておけば出ますが。

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

B1に =A1 と数式を記入する B1でセルの書式設定の表示形式のユーザー定義で [青]"改善";[赤]"悪化";; と設定する。

noname#195146
noname#195146
回答No.2

 B1セルに以下のように入力します。 =IF(A1>0,"改善",IF(A1<0,"悪化",""))  B1セルを選んで、メニューの「書式」から「条件付き書式」を選びます。  条件1で、「セルの値が」の右で「次の値に等しい」を選び、その右の欄に以下のように入力します。 ="悪化" 「書式」をクリックして、フォントの色の設定で赤を選びます。  さらに「追加」をクリックして条件2を表示し、同様に「セルの値が」の右で「次の値に等しい」を選び、その右の欄に以下のように入力します。 ="改善" 「書式」をクリックして、フォントの色の設定で青を選びます。 「OK」をクリックして、A1セルに0以外の値を入れるとご希望の動作となります。A1セルが0か空白の場合は何も起こりません。

  • plus_x
  • ベストアンサー率62% (10/16)
回答No.1

エクセルの関数で文字色の指定は出来ません。 従って、ご要望の操作は関数と条件付書式の併用になろうかと思います。 セルに…… =if(A1>0,"改善",if(A1<0,"悪化","")) 条件付書式に…… 「セルの値が」 「次の値より大きい」 0 → 書式から文字色青を選択 「セルの値が」 「次の値より小さい」 0 → 書式から文字色赤を選択 こんな方法で如何でしょう?

関連するQ&A

  • エクセルで回文を作る関数を組みたい

    概要 エクセルで回文(とまと、しんぶんし、たけやぶやけた、など)を作る関数を組みたいです。 詳細 セルA1に任意の文字数の文を入力すると、セルB1にそれを逆からならべた文を自動的に表示するような関数を組みたい 自分で途中まで考えてみましたが、任意の文字数、ってところが難しい所ですね。 また、できれば入力セル、出力セル、ともにひとつのセルで済ませたいです。 1セル1文字ならば簡単ですよね。 1セル1文字に縦書きにするとしたら B列に セルB1=A10 セルB2=A9 セルB3=A8 セルB4=A7 セルB5=A6 セルB6=A5 セルB7=A4 セルB8=A3 セルB9=A2 セルB10=A1 とするだけです。 ネコでもできますわな。(笑) 入力セル1個、出力セル1個にしないとカッコよくないですね。 次に考えたのが、len関数でセルA1の文字数を検知して、それを引数にしてleft,raight,mid関数で文字を取り出そうと思ったのですが、文字数が増えるごとに関数が1個必要になるので、とても任意の文字数に対応できませんでした。 あらかじめ関数として用意されていませんかねえ? 文を逆転させる関数って。 どなたか、エクセルに詳しい方、お願いします。

  • エクセルでこんなことできますか

    初心者です。宜しくお願いします。 例えばあるセル(1)にAと入力したら別のセル(2)に自動的にaと表示され、同じセル(1)にBと入力したら自動的にセル(2)にbと表示される・・・。 こんなことができる関数を教えてください! できる限り詳しくお願いしますm(__)m ちなみに大文字を小文字にする関数を教えてくれというわけではありません、念のため。

  • エクセル2007の条件付き書式設定について

    エクセル2007の条件付き書式設定についてお尋ねします。日付が入っているセルの横のセルに表示形式をaaaaにして曜日を表示しています。 土曜日は青字で日曜日は赤字で表示したいのですが、条件設定しても 標準のままになります。WeekdayやMIDの関数を使わないと条件付きは使えないのかお教え下さい。 A1 → 日付 B1 → =A1にし表示形式のユーザー定義でaaaaとしています。 B1セルで条件付き書式設定で土曜日は青字、日曜日は赤字にしたいの ですが設定方法をお教え下さい。宜しくお願い致します。

  • EXCELについて…

    A1のセルに学校 A2のセルに校庭 この2つを B1からB10のセルに入力されている文字の中から検索し C1にその該当数を入力するには どのような関数を入力すればよいのでしょうか??

  • エクセルのことで?

     たとえばA1のセルに「日本」と入力されているとして、これが赤色の文字とします。B7のセルに「=A1」と関数を入力するとB7のセルには「日本」と表示されますが、文字色は黒色のままです。  B7のセルに赤色の文字として出力させるには、関数はどういうふうに指定したらいいですか?

  • Excelで、できないかもしれませんが

    A1 のセルに〇  B1 のセルに× があるとします ここで  A2 に 1 を入力したときに A3 のセルに 〇(A1のセルの値) B2 に 2 を入力したときに A3 のセルに ×(B1のセルの値) それ以外のときは A3 を空欄に を表示する関数を作りたいのですが、どうしてもうまくいきません。 ちなみに、A2 と B2 は、同じ文字になることはありません。 どうにかしてこれを表示する方法はないですか?

  • EXCEL、文字の数をカウントしたい。

    エクセル関数を使って、文字(100文字以上)の数をカウントしたいのですが、可能でしょうか。 例えば:セルに一つずつ、ABCAAACDを入力した場合に、A=4、B=1、C=2、D=1 のように表示したいんです。 ※Aを数える場合に、IF関数を使ってAのとき1となるように IF(A1="A",1)+IF(A2="A",1)+・・・+・・・のように順次足していけば短い文字であれば可能ですが、文字数が多くなってくると、セル内に関数がはいりきらずに計算できなくなります。別の関数をつかってより簡単に計算できないでしょうか?

  • EXCELから文字だけ抽出する方法を教えてください

    タイトルの通りですがよろしくお願いします。 どのような状態かといいますと セルA1、セルB1、セルA2、セルB2に文字が入力してあるとします。 セルC5に次のような関数を入力して(A1,A2,B1,B2)に入力した文字を結合します セルC5:=A1&A2&B1&B2 このセルC5に表示されているのは、関数によって合わせた文字が表示されていますが、この表示されている文字をコピーしようとするとセルを右クリックしてワードに貼り付けてセルの枠を消してから文字を取り出すことになります。 当たり前ですが、セルC5をダブルクリックすると関数が現れてしまうので、文字をコピーすることはできません。 上のように長く書きましたが VBSでもEXCELの関数でもいいので、 セルC5に表示している文字をクリップボードニコピーする方法を教えてください。 たとえばVBSならコマンドボタンを作ってコマンドボタンを押すと文字だけがコピーするプログラムとか・・・ EXCELの関数ではできるのでしょうか? いずれにしても大変不便なのでどなたか文字のコピーの方法を知っておられる方はぜひともよろしくお願いします

  • エクセル関数でおしえてください

    Aのセルに「する」「しない」のどちらかを入力するとして、 「する」と入力すると、Bのセルに「○」、 「しない」と入力するとCのせるに「○」、 と言う風に、表示する文字は「○」で同じでも、表示させるセルを変えたい場合、どの関数式をかいたらいいのか教えてください。 マクロはできれば使いたくないので、関数でお願いいたします。

  • EXCEL関数

    EXCEL関数の件で質問します。 セルA1に5を入力し、B1セルにAI+1を表示する場合、(A1+1)>3ならB1セルの数を赤字(フォント)に表示、(A1+1)<3なら黒字になる様な式は出来るでしょうか?出来るなら入力式を教えてください。

専門家に質問してみよう