• ベストアンサー

excel IF関数 表示形式

エクセルのについてです。 例えば、A1セルがUSDやJPYなど通貨を入れるセルとします。 もしA1セルにUSDを入力すれば、隣のB1セルに入力された数字の表示形式は12.50と小数点第二位まで表示。もしA1セルにJPYを入力すれば、隣のB1セルに入力された数字の表示形式は1,000など第一位まで表示。 IF関数でもなんでもいいのですが、このような設定は可能でしょうか・・? どうぞよろしくお願いいたします。

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

  • ベストアンサー
  • m_and_dmp
  • ベストアンサー率54% (974/1797)
回答No.2

条件付き書式でできると思います。 B1 に適当な数(例えば 1234.567)を入力します。 ・B1 を選択して、 ・リボンの「スタイル」の「条件付き書式」のプルダウンメニューから、「ルールの管理」を選択 ・「新規ルール」をクリック ・「数式を使用して書式設定するセルを決定」を選択 ・「次の数式を満たす場合に値を書式設定」に「=A1="USD"」と書き込む ・「書式」をクリック ・「ユーザー定義」で、「#,##0.0」に設定 ・OK, OK これで、A1 にUSD と書き込むと、1,234.6 と表示されると思います。 ・つぎに、B1 を選択して、 ・リボンの「スタイル」の「条件付き書式」のプルダウンメニューから、「新しいルール」を選択 ・・「数式を使用して書式設定するセルを決定」を選択 ・「次の数式を満たす場合に値を書式設定」に「=A1="JPY"」と書き込む ・「書式」をクリック ・「ユーザー定義」で、「#,##0」に設定 これで、A1 にJPY と書き込むと1,234と表示されると思います。 1,234.567 と表示される場合は、リボンの「スタイル」の「条件付き書式」のプルダウンメニューから、「ルールの管理」を開いて見てください。数式が「=A1="JPY"」ではなく、「"=A1=""JPY""」 となっていたら、「=A1="JPY"」に修正してください。

TEXASHAPPY
質問者

お礼

早速のご回答、誠に有難うございます。 ご教示頂いた通りしましたら、出来ました! こんな設定が出来たんですね。 勉強になりました。 有難うございました。

その他の回答 (1)

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

質問者の実例を交えて、丁寧に質問に書くべきと思う。 他人に解らせるために、色んな事を十分考えてないのでは? ーー 課題は(1)2通貨間換算(2)結果について、書式(小数点以下)適用 の2つが含まれているが、 (2)の設定は関数では出来ない(常識)。Format関数では文字列になってしまうが、よいか。 (1)は2通貨間になると思うが、2つの通貨を入れるセルと、結果を出すセルはどうなっているのか(見てくれ)?シートの実例を挙げること。また1セット(1つのセルのカタマリ)だけか?同様のセルが複数続くのか? ーー 通貨種類は記号が慣用的に使われるようだ。 そういう記号で示すのか、漢字かなか? ーー 通貨換算の関数はあるが、ドルとユーロ通貨しかないようだが調べたか? ーー 例えば、 縦方向行に複数通貨、横列に複数通貨の2次元の表を作り、クロスしたセルに相場数字を入れて 表をつくる。毎日毎時相場は変わるのをどうする。 ーー その表で縦方向(行方向)にA通貨でMATCH関数を使い、一致する行を求め、B通貨で横方向(列方向)にもMATCH関数を使い、一致する列を求めて、交差したセルの換算額を取り出し、掛算で換算後額を計算し、書式適用は、Format関数で文字列にするか?

TEXASHAPPY
質問者

お礼

早速の返信、ありがとうございます。 質問がわかりずらく、申し訳ありませんでした。 解決できました。

関連するQ&A

  • Excelで他のセルを参照して表示形式を変えるには?

    Excelで他のセルを参照して表示形式を変えるにはどうしたらいいのでしょうか? 具体的には以下のようなことです。 為替レートを表示するようにしたいのです A列には通貨ペアが入ります A1=USD/JPY A2=GBP/JPY A3=GBP/USD ・・・・と言った感じです このとき B1=115.90 B2=218.32 B3=1.8919 という具合にB1とB2は少数以下2桁、B3は少数以下4桁の表示になるようにしたいのですが、どのようにすればいいのでしょうか? IF関数などを使おうとしたのですが、うまくいきませんでした。 よろしくお願いします。

  • エクセルの表示形式について

    エクセルで普通に数字を入力すると、セルの書式設定の表示形式は標準で、数字はセルの右側に寄ります。 次に、平均を出して小数点以下がいらないので、表示形式を数値にして小数点以下を0にします。 すると入力した数字と平均の数字では、字の位置が少しずれて、平均の数字が少し左に寄っています。 なぜこのような設定なのでしょう。 また、表示形式を数値にしても右端に寄るようにできないのでしょうか。 通貨で表示すると揃うんですけどね 暇なときでよいのでお願いします

  • ExcelのIF関数を使って

    エクセルのことについて教えて下さい。 エクセル2003のIF関数を使って、次のようなことがしたいのですが、どのようにしたらいいでしょうか? 例えば、A1のセルに1と入力したら、B1のセルにミカンと自動的入力され、2と入力したらバナナ、3と入力したらモモ・・・・となるようにです。(A1セルには1から5までの数字が入ります。) よろしくお願いします。

  • 【エクセル】平均を求めたセルとIF関数について

    エクセル初心者です。 (1)とある金額の平均を関数を使い表示させたセル と (2)手打ちで金額が入力されたセル があります。 (1)と(2)について、IF関数を使い 平均された金額と手打ちで入力された金額が同じであれば、〇という表示をさせたいと思っています。 しかし、このままIF関数を使おうとすると、平均を求めているセルが 小数点まで入っているためか、うまく式が反映されません。 平均の金額を、小数点を表示させない形式で別のセルに貼り付けて IF関数を使う方法はありますか? また、もっとスムーズな方法があれば教えてください。

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

    エクセルで表を作成している際 例えばA1、A2には何らかの数字が入力され、A3はブランク という場合、A1で入力されているセルの隣のB1には決まった数字(20など)、ブランクのA3の隣のB3には何も表示されないという関数を入れたいと考えました。 IF関数を使うのだろうと思い色々と入力したのですが、エクセル初心者ゆえ、勉強不足で上手く出来ませんでした。 お分かりになる方にご教授いただければと思い、質問させていただきます。 宜しくお願い申し上げます。

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

    エクセルのIF関数で困っています。 A1のセルは、他のセル(B1)から飛ぶような設定をしている(=B1) B1に入力しない事があるで、A1の「0」に表示しないようにユーザー設定で「#,##0;"△ "#,##0; 」としている。 A2のセルには、A1に文字が表示されたときのみ「日」と表示するようにIF関数を入れた。「=IF(A1="","","日")」 しかし、A1に何も表示されていないのに、「日」が表示されてしまう。 試しに「=IF(A1="0","","日")」としたが、これでも「日」が表示されてしまう。 このような場合、IF関数はどうすればいいのでしょうか。 説明が下手ですいません。 どうか教えてください。

  • Excel 長すぎるif関数

    こんにちは。Excelを使って、条件によって表す表示を変える場合、 例えばa1のセルには0~100までの任意の数字を入れるとして、b1のセルにa1の数字に応じていろいろな表示をしたい場合(具体的には100ならAを表示、90~99ならB、70~89ならC、55~69ならD・・・といったように)、if関数を使うと思いますが、 =if(a1=100,"A"1,if(a1>=90,"B",if(a1>=70,"C",if・・・・)))というように長々と続きますね。条件が少ないうちはいいのですが、条件が多くなると、大変複雑な式になり、入力もしづらいし、頭も使うし、閉じる括弧の数もわからなくなるし、作成に時間もかかりますよね。2つ以上の条件が重なる(例えばA1が90~99の範囲でかつa2がAならb1にB1と表示するなど)など複雑になってくるともうお手上げです。 これらを短時間で要領よく作成する方法はないでしょうか?次の観点で教えてください。 1 if以外の良い関数はあるか?または良い機能はあるか?それとも複雑であってもif関数が妥当なのか? 2 (if関数が妥当であるとして)複雑なif文の作成を簡単にできる方法があるか?あるいはそんなソフトがあるか? 3 やっぱりそういうのはVBAとかで作った方がいいのか?(できれば使いたくないのですが。)

  • IF関数でしたい事と、似たような計算

    エクセル2002です。 表の中に   A     B   C  D 1  1~10  A 2 11~20  B 3 21~30  C 4 31~40  D    : と入力されています。 表示させたい内容は ★「C1セルには数字を入れます。その数字が8ならば、8は1~10の中の数字なので、D1のセルにAと表示される。15ならばBと入力したいです。 使う関数は、IF関数‥‥と迷ったのですが、1~20、21~30‥‥199~200まであるので、IF関数が使えません。 関数では、このような可能でしょうか? 可能であれば教えてください。 不可能であり、他の方法があるなら、教えてください。 お願いします。

  • Excelの関数『IF』にて・・・

    EXCELにて、関数IFを使って一覧表から 自動入力をしたいと考えています。 例えば、以下のようにしてセル『C1』の数字に 応じて、自動を試みたい時 =IF($C$1>80,"=A1",IF($C$1>70,"=B1","=C1")) =A1,=B1,=C1 の場所を文字列としてしか読み取ってくれません =A1,=B1,=C1では無く=A1,=B1,=C1のセルに入力されてる 数式(他のセルの値)を、表示したいんですが どのようにすれば可能でしょうか? 何度やっても「=A1」と、そのまま文字列として出て来ちゃいます。

  • EXCELのIF関数?

    質問させてください。 3つの数字がありAとB、AとC、BとCの強弱をそれぞれみていて、Aが一番大きいとします。 このとき、EXCELの関数を使いセルに一番強いAが表示されるようにしたいのです。 この3つの数字は毎秒変わっているのでAじゃないときももちろんあるので、そのとき一番強いものが 常に表示されるようにしたいのですが、 最初IF関数で式を書こうと思ったのですが、うまくいきません。 どなたかご教示ください。よろしくお願いいたします。

専門家に質問してみよう