恐れ入ります。
仕事でエクセルを用いて文書を作成しているのですが、
知識が低い為、思う様にIF関数を使いこなせません。

具体的に申し上げますと、
A1、B1、C1の3つのセルがあります。A1には常に何らかの情報が
入っているけれど、B1に情報が入ったら、B1の情報が優先され、
C1に情報が入ったら、C1が優先される。つまり、B1とC1に情報が
無い時は、A1が優先される事になります。
また、A1には必ず何か情報が入りますが、B1・C1共に情報が入る
事はありません。

ですので考えられる組み合わせは・・・
A1のみ情報あり →A1を優先
A1とB1に情報あり→B1を優先
A1とC1に情報あり→C1を優先
となりますが、この場合はどの様な数式を入れたら良いのでしょうか?

急を要する事態の為、大変困っています。
解りづらい説明で大変申し訳ないのですが、
どなたかご教授下さいます様、お願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

一例です。


=CHOOSE(1+(B1<>"")*1+(C1<>"")*2,A1,B1,C1)
    • good
    • 4

アルゴリズムの作り方がちょっと下手ですね。



A1のみ情報あり →A1を優先
A1とB1に情報あり→B1を優先
A1とC1に情報あり→C1を優先

とのことですが、最優先の条件は何ですか?
C1に情報があるかどうか、ですよね。
A1に情報があっても無くても、B1に情報があっても無くても、C1に情報があったら、C1を優先するんですよね。

であれば、
C1に情報あり→C1を優先
C1に情報なし→B1に情報あり→B1を優先
C1に情報なし→B1に情報なし→A1を優先
ということですよね。

文章混じりの式を作ると
IF(C1に情報があるかどうか,あったらC1を優先,なかったら別の条件:IF(B1に情報があるかどうか,あったらB1を優先,なかったらA1を優先))
となります。

これを計算式にすると、
IF(C1<>"",C1,IF(B1<>"",B1,A1))
となります。
    • good
    • 7

=IF(C1="",IF(B1="",A1,B1),C1)



で良いと思います。
 尚、データーが入るセルが、A1、B1、C1、D1、E1、F1、G1、H1、I1、という様に数が増えた場合でも成り立つ関数としては、

>B1・C1共に情報が入る事はありません。

という条件が必ず守られている場合であれば、次の様な関数でも良いと思います。
【入っているデーターが文字列データーの場合】
=IF(AND(B1="",C1="",D1="",E1="",F1="",G1="",H1="",I1=""),A1,B1&C1&D1&E1&F1&G1&H1&I1)

【入っているデーターが数値データーの場合】
=IF(AND(B1="",C1="",D1="",E1="",F1="",G1="",H1="",I1=""),A1,SUM(B1:I1))

 又、共にデーターが入っているセルが3個以上ある場合でも、データーが入るセルが1列に並んでいて、必ず右端に近い方のセルのデーターが優先される場合には、次の様な関数でも良いと思います。
【入っているデーターが文字列データーの場合】
=IF(A1&B1&C1&D1&E1&F1&G1&H1&I1="","",INDEX(A1:I1,MATCH("゛゜",A1:I1,-1)))

【入っているデーターが数値データーの場合】
=IF(A1&B1&C1&D1&E1&F1&G1&H1&I1="","",HLOOKUP(99^9,A1:I1,1))

【入っているデーターが数値データーと文字列データーの両方が混在している場合】
=IF(A1&B1&C1&D1&E1&F1&G1&H1&I1="","",INDEX(A1:I1,INT(LOG(1+(B1<>"")*2^1+(C1<>"")*2^2+(D1<>"")*2^3+(E1<>"")*2^4+(F1<>"")*2^5+(G1<>"")*2^6+(H1<>"")*2^7+(I1<>"")*2^8,2))+1))
    • good
    • 0

IF関数ほど素直でわかりやすいものはない。


ただネストという仕組み(書き方、考え方)があるので
Googleででも、「IF関数 ネスト」で照会して読んで考えれば済むこと。
沢山記事があるが。
http://excel.onushi.com/function/if.htm
などがよいかな。
優先順位の高いものから記述していく(考えていく)のが基本。
この質問ではB1,C1,A1、3セル何もなし(この質問ではないそうな)の順。
該当すると該当しないのツリー図を描いて、または少ない場合は2次元図を描いて頭を整理すれば良い。
例 2次元図 +入力あり -入力なし
A-+--++-+
B--+-+-++
C---+-+++
結果    ?      A      B      C      B      C      B      B
    • good
    • 0

=IF(C1<>"",C1,IF(B1<>"",B1,IF(A1<>"",A1,"")))


などのようで良いかと思います。

もし,A1などに入る「情報」の具体的な中身が「言葉の情報」で,「数値」ではない場合は,
=IF(C1<>"",C1,IF(B1<>"",B1,A1))&""
などのようにしても構いません。



なお
>A1には必ず

これが本当に本当なら
=IF(C1<>"",C1,IF(B1<>"",B1,A1))
のように一段縮小できます。
しかし通常こういった関数は,「先にずらりとコピーして並べておいて」使います。
つまり「これからA1に入れる予定のまだA1が空の行」にも,先行して数式をコピーして入れて備えておく使い方をするのが,一般的なエクセルの利用方法です。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q英語における目的語優先という考え方

日本語はそうかもしれませんが、英語でもそういう場合があるのですか?

ある本に
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
*名詞旬とofの関係を考える*
「材木商が雨林を破壊すること」を表す名詞句は次のように3つあります。
(1)the destruction of the rain forest by the lumbermen
(2)the lumbermen’s destruction of the rain forest
(3)the rain forest's destruction by the lumbermen
(1)と(2)に見られるof句はdestroyの目的語を示しています。by句はdestroyの主語を
表すのですが,名詞句ではこのように目的語優先(of句優先)の原則があります。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
とありました。
目的語優先(of句優先)とはどういう意味ですか?

Aベストアンサー

目的語優先(of句優先)とはどういう意味ですか?

(1) the destruction of the rainはdestroy the rain forestと書き直せるので、the rain forestがdestructionの「目的語」のようになっている
従って、こちらを優先させるので、
the destruction by the lumbermen of the rain forestとはならない
という意味だと思います。
(2) も同様に、destruction of the lumbermen of the rain forestではない
という意味だと思います。
(3) はdestruction by the lumbermenが可能なのは、ofの目的語関係がない??ということかもしれませんが、これは苦しい説明だと思います。そもそもthe rain forest'sという所有格がピッタリとdestructionについているわけだし、それ以前に、the rain forest's destructionという、無生物の所有格をここで認めてしまうのには抵抗があります。(today's newspaperのようなのは例外というのはわかっていますが)

以上、その本の言おうとしていることを想像して答えましたが、よろしいでしょうか。

目的語優先(of句優先)とはどういう意味ですか?

(1) the destruction of the rainはdestroy the rain forestと書き直せるので、the rain forestがdestructionの「目的語」のようになっている
従って、こちらを優先させるので、
the destruction by the lumbermen of the rain forestとはならない
という意味だと思います。
(2) も同様に、destruction of the lumbermen of the rain forestではない
という意味だと思います。
(3) はdestruction by the lumbermenが可能なのは、ofの目的語関係がない??というこ...続きを読む

Qエクセルif関数で、複数のシートから情報を集約する方法if関数が最適なのかもわからないのですが、

エクセルif関数で、複数のシートから情報を集約する方法

if関数が最適なのかもわからないのですが、
以下の情報での情報集約方法を探しています。

複数シート(フォーマットは全て同じ。シート名は1.2.3.4.5~)

シートのA列に店舗番号がはいっています。
例 A1→100,A2→101,A3→102

シート1のA列に100が入力されている場合、
まとめシートに、シート1のC1が反映される。シート5のA列に150が入力されていた場合、まとめシートにシート5の該当セル(C151)が反映される。

上記のような数式を作りたいです。
どなたかご教授頂けますでしょうか?

宜しくお願いいたします。

Aベストアンサー

100とか150と言うのが店舗番号だろうか。
ならばシート名があるならそれを使って参照先を指定できる。
文字列から参照先を指定する場合、INDIRECT関数を使う。
すると、
=IF(シート1!A1=100,シート1!C1,"")
が、
=IF(INDIRECT(A1&"!A1")=B1,INDIRECT(A1&"!C1"),"")
のようになり、
=IF(ISERROR(MATCH(100,シート1!A:A,0)),"",シート1!C1)
が、
=IF(ISERROR(MATCH(B1,INDIRECT(A1&"!&A:A"),0)),"",INDIRECT(A1&"!C1"))
のようになる。

この場合、C1セルに相当する部分がどう紐付けされているのか不明なので、
そこは自身で「工夫してくれ」。
※条件(情報)が明らかに少なく、推測では答えられない。


もう一つアドバイス。
自身の手に負えない物件は早めにできないと申告すべき。

Q英語学習の優先順位

現在高1で英語学習に葛藤しています。
英単語・英熟語・英文法・長文読解・リスニング
↑の5つの選択肢がある場合、優先順位を教えて下さい。
またそうなる理由もお願いします。

Aベストアンサー

実は私は日本語を勉強中ですからこれちょっとわかるですね^^。
1)英文法
それが一番大切。 文法がわかれば他の単語は辞典に見つけられる。 文法がわからなければ英語はわからない。

2)英熟語
とても面白いですからwhy not, right?
それで、熟語がわかればもっと母語話者のようになるじゃないですか。

3)リソニング
リソニングスキルが一番難しいと思うですけど早晩必要じゃないですか。 映画は英語で見る、英語の曲を聴く、ビデオゲームを遊べば英語のコミュニティーを見つけて。 例えば艦これも英語のコミュニティーあるですよ。

4と5)
長文読解と英単語
英語を大学専攻にしたいなら長文読解必要。 したくないなら必要ない。
それで英単語
全然勉強必要ない。日本語と同じ、漢字がそんなに沢山! 全部頭に入れること無理!
しかし!
英語は本当に身につけたいなら留学して。アメリカにも、英国にも、オーストラリアにも(つまり、アクセントを選ぶ!)。 そうすれば単語だけじゃなくて、全て上手くなる。
留学しなくて英語を上手になることもできるですけど難しいと思うよ。

以上

私は日本語を勉強中ですから錯誤があれば本当にすみませんでした。

実は私は日本語を勉強中ですからこれちょっとわかるですね^^。
1)英文法
それが一番大切。 文法がわかれば他の単語は辞典に見つけられる。 文法がわからなければ英語はわからない。

2)英熟語
とても面白いですからwhy not, right?
それで、熟語がわかればもっと母語話者のようになるじゃないですか。

3)リソニング
リソニングスキルが一番難しいと思うですけど早晩必要じゃないですか。 映画は英語で見る、英語の曲を聴く、ビデオゲームを遊べば英語のコミュニティーを見つけて。 例えば艦これも英語のコミュ...続きを読む

Qエクセル IF関数 複数条件?

いつもお世話になります
IF関数で複数条件を記入する場合
現在は
=IF(AND(A16="aaa",H16>=81),H16-80,IF(AND(A16="aaa",H16>=1),H16+80,IF(AND(A16="bbb",H16>=81),H16-80,IF(AND(A16="bbb",H16>=1),H16+80,H16))))
と やたらと長い条件設定になっています
結果は正しいのですが、もっとスッキリ出来る方法を教えて頂きたいのです。

Aベストアンサー

> =IF(AND(A16="aaa",H16>=81),H16-80,
> IF(AND(A16="aaa",H16>=1),H16+80,
> IF(AND(A16="bbb",H16>=81),H16-80,
> IF(AND(A16="bbb",H16>=1),H16+80,H16))))
>

え~、H16が81以上ならA16が"aaa"でも"bbb"でもH16-80で、H16が1
以上81未満ならA16が"aaa"でも"bbb"でもH16+80ですよね。じゃぁ

「A16が"aaa"または"bbb"」の場合に限り、H16が81以上なら-80、
H16が1以上81未満なら+80、H16が1未満なら0をH16に加算する。

とでも書き直せますね。

=H16+or(A16="aaa",A16="bbb")*if(H16>=81,-80,if(H16>=1,80,0))
=H16+or(A16="aaa",A16="bbb")*lookup(H16,{-1E9,1,81},{0,80,-80})
=H16+or(A16="aaa",A16="bbb")*(H16>=1)*if(H16>=81,-80,80)

ほかにもいろいろあるでしょう。

> =IF(AND(A16="aaa",H16>=81),H16-80,
> IF(AND(A16="aaa",H16>=1),H16+80,
> IF(AND(A16="bbb",H16>=81),H16-80,
> IF(AND(A16="bbb",H16>=1),H16+80,H16))))
>

え~、H16が81以上ならA16が"aaa"でも"bbb"でもH16-80で、H16が1
以上81未満ならA16が"aaa"でも"bbb"でもH16+80ですよね。じゃぁ

「A16が"aaa"または"bbb"」の場合に限り、H16が81以上なら-80、
H16が1以上81未満なら+80、H16が1未満なら0をH16に加算する。

とでも書き直せますね。

=H16+or(A16="aaa",A16="bbb")*if(H16>=81,-80,...続きを読む

Q英語の優先するべき勉強方法を教えてください!!

今高校3年生です。英語の得点力を上げたいのですが、なかなか伸びません。
模試ではだいたい120点ぐらいしかとれません・・・
センターでの目標点数は160点です。
そこで何を優先して勉強すべきか教えてください!!
・単語
・文法
・英作文
・長文読解

語彙力は単語帳1700を大体覚えたぐらい、文法は文法問題のところでは正答率6割程度、英作文は3問に1,2問の正答率、長文は半分ぐらいの正答率です。

志望校は明治大学なんですが、取り合えあずセンターで実力を試してみたいです。

Aベストアンサー

取りあえず、語彙量を増やして、文法を極めることです。
語彙量があり、文法の力があると、長文は自然に読めるように
なってきます(もちろん慣れは大事ですが)し、英作文は
単語と文法がわからないことにはどうにもなりませんよね。

Q【エクセル】if関数と複数条件

特定の列の数字の合計値が基準以下であればA,基準以上であればその値×1.2といった表示をすることは可能でしょうか。

例えば基準Aを75として下記のような列の場合
13
14
16
16
10

合計が69、なので表示は75

次のような列の場合
15
16
17
19
21

合計が88なので88*1.2 = 105.6と表示したい。

可能でしょうか。お手すきの方お助け頂ければ幸いです。
よろしくお願い致します。

Aベストアンサー

=IF(SUM(A1:A5)<75,75,SUM(A1:A5)*1.2)
とすれば良いでしょう。

Qgoogleで英語を入力しても、日本のサイトが優先されるのはなぜ?

海外のサイトが見たくて、Googleでtennisと入力しても、
結局は日本のテニスに関するサイトが出てくるのですが、
どうして、日本のサイトが優先されるのですか?

また、海外のサイトを見るにはどうすればいいのでしょう。

Aベストアンサー

日本版のgoogleだからとしか言いようがないですね...
そういう仕様なのでしょう

右下の方のGoogle.com in Englishから英語版にいけますので
そちらを試してみてください

Qエクセル-複数が複数ある場合のIF関数について

はじめて質問させていただきます。
現在、EXCEL2003で機械の運搬金額を[サイズ][時間帯][運搬距離]という、3つの条件がある場合の算出方法を考えているのですが、どうしても出来ません。

条件としては
1.機械サイズが[A][B][C][D]と4の条件に分かれる
2.時間帯が[昼間][夜間]と2の条件に分かれる
3.運搬距離が[~1km未満][1以上~5未満][5以上~10未満][10以上~15未満]…と15の条件に分かれる
となっています。

ちなみに、各条件の金額一覧表は別のワークシートに作成しています。
(位置の変更可能)

この様な、条件が2つ以上あり、うち1つはパターンが15個もある場合IF関数で式を作成する事は可能でしょうか?
また不可の場合は他に何か良い方法はありますか?

宜しくお願いします。

Aベストアンサー

VLOOKUPの解説の中に

解説

検索の型に1を指定し、検索値が見つからない場合は、検索値未満で最も大きい値が使用されます。
検索値が範囲の左端の列の最小値より小さい場合、エラー値 #N/A が返されます。

とあります。

つまり、

   A  B
1   0  0~4.99
2   5  5~9.99
3  10  10~14.99
4  15  15~

と言う対応表になります。
この事から、ご質問内容に合わせた形に直すと

   A      B
1   0   0~5までの料金
2   5.1  5.1~10までの料金
3  10.1  10.1~15までの料金
4  15.1  15.1~20までの料金
5  20.1  20.1~の料金

となるかな?
10Kは5.1の横の料金に該当します。
11Kは10.1の横の料金ですね。

Q英語で「こちらは妥協し話をまとめることを優先する」

海外に品物を送るときの送料をどちらが負担するか交渉しています。
はじめは、こちらは一銭も払わないで主張していましたが、
このままでは破談になるので交渉しようとしています。
「私のボスは話をまとめる事を優先し妥協点を探すことに前向きだ」
という内容を伝えたいのですが、どのように表現すればいいでしょうか。
よろしくお願いします。

Aベストアンサー

むずかしいですね

前向きだというのは、日本語独特なので

He has good intention to ・・・

(~するきはおおありだ)

位に訳すのがよいかなと思いますが。

ただ

Our boss has good intention to
compromise.

(上司は、妥協するきがおおありだ)

のような、ことをいっては、交渉上たちば
が弱くなるようきもします。これだけいって
しまうのであれば、話をまとめることを優先
しの部分はもう訳さず、直接交渉内容に
言及するのがいいと思います

How about sharing the shipping 
cost between us?

(送料費用折半でどうか)

と続けてはいかがでしょうか

あるいは、妥協点をさがすことに前向き
だの部分を、

決裂するよりも、契約を成立させること
を望むとつたえたらよいかと思います。


ともちかけてはいかがでしょうか

Qエクセルのif文関数の複数条件時の記述について

こんにちは。

エクセルのif文関数についての質問です。
添付画像にあるように、データがあるとします。

このエクセルは、ABCの行それぞれのデータに対応して、
A行、B行、C行それぞれのデータのうち、ひとつでも1000を超えるデータがあれば
判定のセルに1を表示するというものです。
この場合、今まではH4のセルに

=IF((OR(C4>1000,D4>1000,E4>1000,F4>1000)),1,0)

と入力していました。
今までは例のようにデータの列が4つほどなので問題なかったのですが、
データの列が60列となり、上記のようなIF文では処理できなくなってしまいました。
(条件が30個を超えるとエクセルからエラーがでます)

この場合上記のIF文をもっと簡潔に、
列が増えても問題ないような関数に置き換えるには
どのような関数を入力すればいいでしょうか。

皆様よろしくお願いします。

Aベストアンサー

次のような式にします。

=IF(COUNTIF(C4:F4,">"&$A$1),1,0)


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報