• 締切済み

IF文

M列に以下をペーストするとN列O列が空欄ときはM列のセルに何も表示されません。 同行のNとOに数値を入力してから削除すると「調査中」が表示されます。 最初からN列O列が空欄ときに「調査中」と表示する書式を教えて頂きたくお願いします。 =IF(N123<>"",N123,IF(O123<>"",O123,"調査中")) EXCEL2007です。

みんなの回答

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

>同行のNとOに数値を入力してから削除すると「調査中」が表示されます。 というお話なので =IF(ISNUMBER(N123),N123,IF(ISNUMBER(O123),O123,"調査中")) でも良いかもしれません。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 最も基本的な考え方に基づく関数は、 =IF(AND(N123="",O123=""),"調査中",IF((N123<>"",N123,O123)) になりますが、これを整理すると、 =IF(N123="",IF(O123="","調査中",O123),N123) となります。  尚、質問者様の考えられた関数でも、最初からN列とO列が空欄の場合には、「調査中」と表示される筈です。  「調査中」と表示されないのは、N123やO123が空欄の様に見えてはいても、実際にはスペース(空白)か、或いは表示に現れない文字が入力されているためではないかと思われます。  ですから、一見すると空欄に見えるセルをまとめて選択してから、キーボードのDeleteキーを押して、空欄に見えるセルのデーターを削除してみて下さい。  又、もしも、N列やO列の値が、関数によって決まる様になっている等の理由から、下手にデーターを削除してしまうと不都合がある場合には、余分なスペースを消してしまう関数であるTRIM関数と、殆どの表示されない文字を消してしまう関数であるCLEAN関数と、特定の文字列を別の文字列に置換する関数であるSUBSTITUTE関数を組み合わせて、次の様な関数とします。 =IF(TRIM(CLEAN(SUBSTITUTE(N123,CHAR(160),)))="",IF(TRIM(CLEAN(SUBSTITUTE(O123,CHAR(160),)))="","調査中",O123),N123)  尤も、「コード番号160の文字」は使われる事が殆どありませんから、大抵の場合は、 SUBSTITUTE(対象のセル,CHAR(160),) の部分の処理まで必要となる可能性は低いため、 =IF(TRIM(CLEAN(N123))="",IF(TRIM(CLEAN(O123))="","調査中",O123),N123) でも事足りると思います。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

次の式でもよいですね。 =IF(COUNTIF(N123:O123,"")=2,"",IF(N123<>"",N123,IF(O123<>"",O123,"調査中")))

回答No.2

空白セルの判定は ISBLANK(セル) を用います。 セル<>"" の関係式を用いた場合、参照しているセルが「空白セル」の場合、式全体が「空白(ヌル)」になります。 式全体がヌルになってしまうのを防ぐ場合は =IF(ISBLANK(N123),IF(ISBLANK(O123),"調査中",O123),N123) のようにします。

  • edomin7777
  • ベストアンサー率40% (711/1750)
回答No.1

「空欄」(何も見えない)だけど、何かが入っている。 (スペースとか"0"が入っているけど非表示にしているとか…。) 何が入っているかを調べる方が先だけど、何も入っていない気がする。 なら、自分が空欄だと思っているN列とO列を削除する。