• ベストアンサー

IF関数と表示形式を他のセルから設定

こんにちは。交通費明細をExcelで作成しており、 関数や書式で行き詰ったのでご教授下さい。 A1はドロップダウンで【空白、→、⇔】を選択できるようになっています。 すぐ下のセルA2には金額を入れるようになっています。 やりたい事は、A1で⇔を選んだ時のみ、A2に入っている金額に"x2"という表示をつけたいのです。 A1もA2もマクロを組んだクリアボタンを押すとDeleteされるようになっています。 ので、A1やA2自体にIF関数を入れられません。(消えちゃうので) A2のセルの書式設定の表示形式をいじろうとしても、条件は入れられず…? A3にIF関数を入れてA1が⇔だったらA2を変更…としようとしたのですが、自分のセルを変更させるのは分かりますがA2を変更、というのがどう書いたら良いのか、はたまた他のセルを変化させられるのか、よく分かりません; VBAを使えば出来ますが、VBAを使わずに実現できる方法がありましたら ご教授お願いします。

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

  • ベストアンサー
回答No.1

>VBAを使わずに実現できる方法がありましたら 一般機能では人間の判断が必要になります。 >A1で⇔を選んだ時 はA2セルの表示形式を #,##0"x2" にする A1で⇔を選ばなかった場合は は A2セルの表示形式を #,##0 にする ところでB2セルに =IF(A1="⇔","x2","")ではだめ?

yuky-4126
質問者

お礼

回答ありがとうございます。 >ところでB2セルに =IF(A1="⇔","x2","")ではだめ? なるほど!印刷した時に綺麗になるようにと 同じセルに表示する事ばかり考えていましたが そうですよねー!と、作り直しました。 順調です。ありがとうございました!

その他の回答 (3)

回答No.4

トータルコストを考えると一番コストがかからないのは、IF関数でA2の近くのセルに「x2」を表示させることでしょう。 A2のセルではなくほかのセルに表示することで、どれだけ仕事に重大な支障や損失が生じるのかわかりませんが、そのために何時間、何日も頭を悩ますよりもほかの仕事をした方が、フツーは余計なコストがかからず断然効率的なはずです。

yuky-4126
質問者

お礼

回答ありがとうございます。 他のセルに表示させる事で発生する事は、ページのデータをクリアする時に例えば A1からZ30まで と一括で消せないので そこを設定するのが面倒だった感じです。 すぐ隣のセルに「x2」と表示させる事で解決しました。ありがとうございました!

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

>A3にIF関数を入れてA1が⇔だったらA2を変更…と 冗談じゃない。関数の基本原理からしてそんなことは出来ない。式を 入れたセルの値を関数で決められるだけで、別のセルの値は左右できない。 VBAを使うと、入力者が素人だもんで・・なんて理由を書いて、VBAを避けている質問者がいるが、 A2セルのコメントででも対応したら。 A2の値を、ある場合には2倍したいなら、そのセルを使う(参照する)セルの式などで考慮したら。

yuky-4126
質問者

お礼

回答ありがとうございます。 他のセルの値は左右できないのですね。 CoalTarさんの回答を参考に、すぐ隣のセルに「x2」と表示させる事で解決しました。ありがとうございました!

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

VBAでないと無理です。 他では、合計金額用を追加して表示するぐらいでしょうか。 例えば、A1が往路区分、A2を単金、A3に往路条件を判定して表示する。

yuky-4126
質問者

お礼

回答ありがとうございます。 ムリなのですね。私が無知な為かと思っていました。。。 やはり他のセルに表示、ですね。ありがとうございました!

関連するQ&A

  • 一つのセルでIF関数を二つ使いたい

    二つのセルの値を割って、%を表示させるために、三つ目のセルには 「=1-(B1/A1)」を入れていたのですが、そこに、二つのセルが空白の時にはエラー表示にならないようにIF関数を使い、三つ目のセルは 「=IF(ISBLANK(A1),"",(1-(B1/A1)))」 という数式にしました。 その数式にさらに、もし二つのセルの値が「0」の時には、結果を「0%」として表示させたくて、三つ目の数式の中にもうひとつのIF関数を同時に使いたいのですが、 一つのセル内に、IF関数を使って結果をうまく表示させるには、どのような数式にすれば良いでしょうか??

  • excel if関数について

    教えて下さい。 今書式を作っていますが、空白の場合表示しない方法がわかりません。 If関数を使えば良いとは分かるのですが、関数の組み合わせかたが間違っているらしく、どうしてもエラーになってしまいます。 作りたい関数は 例 A1 today A2 個人名 A3 誕生日 A4 年齢 というものです。 この時A4セルに誕生日の関数を入れ、もしA3セルが空白ならA4セルも空白にする。 という書式を作りたいと思います。 どんな関数を入れれば良いのかご教示願います!

  • IF関数をひとつのセルに二つ使いたい。

    A列のセルには、 「空白」、「0.5」、「1」、「1,5」、「2」が入るのですが B列のセルには 隣接するA列が「0.5」~「1,5」までは500、 「2」以上だと1000、 A列が空白だとB列も空白にしたいです。 でも最初からB列には関数 「=IF(1<A1,1000,500)」を入れてオートフィルしているので 空白のセルも勝手に「500」に入力されてしまいます。 そもそも「=IF(1<A1,1000,500)」ではだめですよね? よろしくお願いします。

  • エクセルIF関数について

    エクセルIF関数について A2セルにA1セルが空白なら空白。8:00ならば、8:00。8:00>ならA3セルに(そのままの値を)表示せよ。 という関数を入れたいのですが、どの関数をどのように定義すれば良いのかわかりません。 IF関数かな?と思ったのですが、IF関数で偽のときは、「別のセルに入力せよ」などというような定義って出来るのでしょうか? どなたか教えてください。

  • IF関数での計算結果を貼り付けたとき、完全な空白セルにしたい

    EXCELのIF関数で例えばA1セルが3のときAを表示して違うときは空白にしたい場合は =IF(A1=3,"A","") と書くと思いますが、IF関数が書かれているセル(計算結果)をコピーして他の範囲に値だけを貼り付けた場合、Aまたは空白セルに見かけ上はなってはいるのですが、その空白セルにはよく見ると '(カンマ)が入っており、完全な空白セルにはなっていないようです。後で貼り付けられた範囲を編集していきたいのですが完全な空白セルでないため作業が続かなくなっています。どなたか詳しい方がおられましたらよろしくお願いします。

  • エクセル 一つのセルにif関数を設定したい

    if関数で困っています 一つのセルに複数の条件を設定したいのですが 上手く設定できません。 ①隣のセルが空白であれば、空白 ②①で空白でないなら、二つのセルの数値を参照し、いずれかの数値を表示 ただし、2つのセルの数値の一方が0ならば0を表示 わかりづらい説明で申し訳ありませんがよろしくお願いいたします。

  • IF関数についておしえてください。

    お世話になります。 作成している表の中で、利用しようとおもっている関数について教えてください。 A1セルに下記のようなIF関数を作成しました。 =IF(AND(B2>=1,C2<=0),"○",IF(AND(C2>=1,B2<=0),"○",IF(AND(B2>=1,C2>=1),"○",IF(AND(B2<=1,C2<=1),"")))) B2セルは別シートからVLOOKUPを利用して検索してきて、数字を表示させているセルのため、 該当しない場合”#N/A”と 表示されるところがありました。それで、”=IF(ISERROR”を利用して、#N/Aと表示される場合、空白で表示される数式にしたところ、今度はA1セルが条件にあっていないのに”○”と表示されるようになりました。≪”B2=空白(”#N/A”),C2<=1の場合にあたるのだと思います。≫ *B2セルを”空白”ではなく”0”で表示させるようにしても同様に”○”となりました。 A1セルに、  B2>=1,C2<=0の場合”○”  C2>=1,B2<=0の場合”○”  B2>=1,C2>=1の場合”○”  B2<=1,C2<=1の場合"空白" で表示できる方法をご存じの方、ご教示お願いいたします。 簡単なことなのかもしれませんが、エクセル関数初心者のため、大変困っております。 うまく、不明な点を説明できていませんでしたら、申し訳ございません。何卒 よろしくお願いいたします。

  • excel2007 可視セルのみグラフに表示したい

    グラフ作成時、グラフツールーデザインーデータソースの選択ーその中の「非表示および空白のセル」の項目において「空白セルの表示方法」にて可視セルのみをグラフにすることは理解できているのですが、 現在、あるセルの中に「=if(a1="","",????)」というような関数を入れており、これは可視セルではないと私は思うのですが、グラフには0(ゼロ)の値が認識されてしまいます。念のために上記の「空白セルの表示方法」においては空白というチェックリストにつけてもグラフは0(ゼロ)の値が認識されたままです。この""文字では可視セルとなってしまうのでしょうか?  ちなみにこの「=if(a1="","",????)」のセルをdeleteで消すとグラフは非表示になってくれます。 グラフは縦軸に不良金額、横軸に4月から3月と軸を取っています。 抜本的な対策等あればご教授お願い致します。

  • エクセル IF関数が入った条件付き書式について

    エクセルにおいて、セルA1、B1、C1があるとします。A1、B1には数値が何も入力されていない状態で、C1に計算式「=SUM(A1)/B1」が入っているとします。このままでは、C1は、「#DIV/0!」と表示されます。 この表示を消すために、C1にIF、ISERROR関数を使い、「=IF(ISERROR(SUM(A1)/B1),"",SUM(A1)/B1)」の計算式を入力します。 このままでもいいのですが、C1の値が「10以上」になった時に、C1のセルに色を付けたいのです。 書式→条件付き書式→セルの値が→次の値以上→10 にすると、セルに何も値が入っていない(空白)状態で色だけが付いてしまいます。 色々調べると、IF関数の""の空白が文字列のため、数値より大きいとみなされている事が原因っていうことは、分かりましたが、色々試してみても出来ません。何かいい方法はございますでしょうか? ご教授お願いします。

  • IF関数について

    IF関数について A列のセルに住所が入力されていて、「中野区」という文字列が含まれているときに「○」そうでない場合は「-」をB列セルに表示させる方法で B列セルに、 =IF(COUNTIF(A1,"*中野区*"),"○","-") を入力すれば良いことがわかりました。 この条件に加えて、A列のセルが空白の場合上の行を参照するという条件を加えたいと思います。 例A3のセルが空白の場合A2を参照しB3に表示させる。 因みに、A2も空白の場合A1を参照する。 って感じにしたいです。 宜しく御願いします。

専門家に質問してみよう