Excelの数式を使って店名の合致を判定する方法

このQ&Aのポイント
  • Excelの数式を使って特定の店名の合致を判定する方法について教えてください。
  • 質問者は特定の店名が合致するかどうかを判定するために数式を作成しましたが、合致しない場合には「FALSE」ではなく空白セルにしたいという要望があります。
  • 具体的なExcelの数式やセルの書式設定に関する詳細な情報が質問文章に含まれています。
回答を見る
  • ベストアンサー

Excelの数式について教えてください。

=IF(AND($A7="",$I7="",),"",IF($X7=$AA$13,IF(AND(NOT($A7=""),NOT($I7="")),$H7+$P7,IF($X7=$AA$13,IF(NOT($A7=""),$H7,IF($X7=$AA$13,IF(NOT($I7=""),$P7))))))) 何とか上記の数式を作ったのですが、 (X列、AA列は色々な店名が入力されています。)X列の店名が、AA列の店名に合致すると、正常に計算されますが、合致しないと"FALSE"が表示されます。 合致しない場合は、"FALSE"でなくセルを空白表示にしたいのでが、数式を教えてください。 Excel2003 セルの書式設定:X列、AA列は標準、他の列は数値です。この式はQ列に入力されています。 よろしくお願いいたします。

  • a_h25
  • お礼率64% (55/85)

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

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

一例です。 数式のIF関数がくどいので整理してみました。 ■A列とI列が空白、又はX列とAA列が不一致の場合は空白 ■上記以外は、A列とI列が入力ありでH列+P列、A列ありはH列を入力、以外はP列を入力としています。 =IF(OR(COUNT($A7,$I7)=0,$X7<>$AA13),"",IF(COUNT($A7,$I7)=2,$H7+$P7,IF($A7,$H7,$P7)))

その他の回答 (3)

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

計算を整理すると =IF(OR($X7<>$AA$13,AND($A7="",$I7="")),"",IF($A7<>"",$H7)+IF($I7<>"",$P7)) のようにすれば良いことが判ります。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

数式を分解すると下記のようになります。 =IF(AND($A7="",$I7="",),"",【1】) 【1】=IF($X7=$AA$13,【2】,【3】) 【2】=IF(AND(NOT($A7=""),NOT($I7="")),$H7+$P7,【4】) 【4】=IF($X7=$AA$13,【5】,【6】) 【5】=IF(NOT($A7=""),$H7,【7】) 【7】=IF($X7=$AA$13,【8】,【9】) 【8】=IF(NOT($I7=""),$P7,【10】) 上記で【3】【6】【9】【10】の結果が指定されないため 表示がFalseになります。""にする場合は =IF(AND($A7="",$I7="",),"",IF($X7=$AA$13,IF(AND(NOT($A7=""),NOT($I7="")),$H7+$P7,IF($X7=$AA$13,IF(NOT($A7=""),$H7,IF($X7=$AA$13,IF(NOT($I7=""),$P7,""),"")),"")),"")) ただし、【7】【9】は【4】の時点で既に結果が分かる為、省略できます。 =IF(AND($A7="",$I7="",),"",IF($X7=$AA$13,IF(AND(NOT($A7=""),NOT($I7="")),$H7+$P7,IF($X7=$AA$13,IF(NOT($A7=""),$H7,IF(NOT($I7=""),$P7,""))),"")),""))

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

提示された数式は、AND関数とIF関数の使い方が間違えており、かつ冗長な条件分けになっているように思います。 まずAND関数の部分はカッコ内のカンマが余計です(A7とI7が空白でもFALSEになります) IF関数については、条件が成立しなかった時の数式が設定されていません(この場合数式は、FALSEを返します)。 ちょっと見たところでは以下の「どうするの」の部分が抜けているように思います。 =IF(AND($A7="",$I7=""),"",IF($X7=$AA$13,IF(AND(NOT($A7=""),NOT($I7="")),$H7+$P7,IF($X7=$AA$13,IF(NOT($A7=""),$H7,IF($X7=$AA$13,IF(NOT($I7=""),$P7,""),"どうするの")))),"どうするの")) またIF関数の条件部分ですが「AND(NOT($A7=""),NOT($I7=""))」などは必要なのでしょうか? いずれにしろ、もう一度条件分けを整理して、順次範囲を狭めるような数式にしたほうが良いと思います。

関連するQ&A

  • Excel 2003の計算式を教えてください。

    式の詳細です。 1)X5のセルが "*都" で A5とI5のセルが入力されていれば (G5+O5)*AB1、A5が入力されていてI5が空白の時は、G5*AB1、A5 が空白でI5が入力されていれば、O5*AB1 2)X5のセルが "*市" で A5とI5のセルが入力されていれば (G5+O5)*AB1、A5が入力されていてI5が空白の時は、G5*AB1、A5 が空白でI5が入力されていれば、O5*AB1 1)=IF(NOT(COUNTIF($X5,"*都")),"",IF(AND(NOT($A5=""),NOT ($I5="")),($G5+$O5)*$AB$1,IF(NOT($A5=""),$G5*$AB$1,IF(NOT ($I5=""),$O5*$AB$1)))) 2)=IF(NOT(COUNTIF($X5,"*市")),"",IF(AND(NOT($A5=""),NOT ($I5="")),($G5+$O5)*$AB$2,IF(NOT($A5=""),$G5*$AB$2,IF(NOT ($I5=""),$O5*$AB$2)))) 以上1)2)別々の式は問題なく計算できるのですが、二つの式 を一つにして 以下の式にしてS5のセルに入力したのですが、数 式が間違っていますと表示されます。 =IF(NOT(COUNTIF($X5,"*都")),"",IF(AND(NOT($A5=""),NOT ($I5="")),($G5+$O5)*$AB$1,IF(NOT($A5=""),$G5*$AB$1,IF(NOT ($I5=""),$O5*$AB$1,IF(NOT(COUNTIF($X5,"*市")),"",IF(AND (NOT($A5=""),NOT($I5="")),($G5+$O5)*$AB$2,IF(NOT ($A5=""),$H5*$AB$2,IF(NOT($I5=""),$P5*$AB$2,"")))))))) 正しい式を教えてください。 宜しくお願いいたします。

  • EXCELの数式を教えて下さい

    今朝、ここで数式を教えて頂いて大変助かったのですが 又、一つ私にとって難しすぎるのが出ましたので教えて下さい。 1)EXCELの4行目から53行目までデータがあり、A4とI4とS4列は文字の項目です。G4列は売上の数値です。 2)例えば4行目から53行目までのある1行でA4(*JPY)、I4(*JPY)、S4(*アジア)の3項目が合致した行だけのG4の売上数値だけを4行目から53行目までの数値合計をだす数式をつくりたいです。3項目の合致がない場合はセルに0を表示したいです。 宜しくお願い致します。

  • EXCELの数式について教えて下さい

    =IF(ISBLANK(H2)," ",IF(H2>1000,3000+6*700+6*(H2-1000),IF(H2>300,3000+7*(H2-300),"3000"))*65%) 上記の数式は正しくありませんか? H2セルに何らかの数値が入っている場合は「IF(H2>1000,3000+6....」以降の計算を行い、その結果が 隣のセル(I2)に出て、空白の場合隣のセルに空白で返す、ということをさせたいのですが、この数式ですとどうしても「#VALUE!」が返ってきてしまいます。 何か良い方法はないでしょうか?

  • エクセルの数式コピーについて

    数式をセルに入れていくにあたっての質問です。 下記の数式を横のセルにコピーを連続でしていきたいのですが、下記の「J8:P8」の部分がドラッグで引っ張ると「K8:Q8」になってしまいます。 おこないたいことはドラッグして「J8:P8」→「Q8:W8」その横列は「X8:AD8」になるようにしていきたいですがいい方法はありますでしょうか。 詳しくお聞かせ頂きたくよろしくお願いいたします。 =IF(ISNA(MATCH("●",週間!J8:P8,0))=FALSE,"●","")

  • エクセルの数式についてお尋ねします。

    数千個の単語帳を逐次ソート、整理しています。 =IF(($A9=$A10)*AND($B9=$B10),"★","○ ") A列に英単語とB列にそれに対応する日本語を入力しました(2行目以下)。 数千個の単語帳ですので、重複があります。それで、データ並び替えで整列させたあと、上下の同一セルをチェック、異なれば○、同一であれば★をC列に表示させました。 上は、セルC9の数式です。 今度は、C列を見ていくのですが、これが面倒ですので、セルC1に、その下のC列上の★マークの数を表示させたいのですが、可能でしょうか。 C列(2行目以下)には、上の数式が入っています。 よろしくお願いします。

  • 配列数式について教えてください

    ここでエクセルでの文字列の検索方法をさがしていたらさきほど、ちょうど良くこのような配列数式をみつけました。 =IF(A1="","",MIN(IF(ISNA(MATCH("*"&$H$1:$H$9,A1,0)),10,$I$1:$I$9))) A1セルに、H1からH9の表にあるどれかの文字列を含んだ文字列をいれると対応するI1からI9の表の値を表示するものです。 使われているMINやISNAやMATCH関数はわかるつもりですが、組み合わせるとなんでこんなことができるのか、ぜんぜんわかりません。どなたか解説していただけないでしょうか? http://oshiete1.goo.ne.jp/kotaeru.php3?q=653775

  • EXCELの数式でFALSEが返ってくる

    例えば、A12とI12にJPNを含んだ項目名がある場合、H12とP12の合計をQ12に表示し、もしJPNの項目名が違う場合はQ12を無表示にしたいのですが、項目名が違う場合FALSEが帰ってきます。 無表示にするにわどんな式すればよいか、教えて下さい。 宜しくお願い致します。 自分なりに色々な回答を参考につくったのですが =IF(A12="","",IF(ISERROR(IF(COUNTIF(A12,"*JPY"),IF(COUNTIF(I12,"*JPY"),H12+P12))),"",IF(COUNTIF(A12,"*JPY"),IF(COUNTIF(I12,"*JPY"),H12+P12))))

  • Excel 2003、 ソーティングできません。もしかして「数式」のソーティングはできません?

    Excel 2003 を使っていて、昇順でソーティングしたいデータがあるんですが、ツールボタンをクリックしてもソーティングできません。もしかして、ソーティングしたいセルには、たとえば =P2 とか =Vlookup(S2,A1:X33,3,false) のような「数式」が入っているため、「数式」のデータのソーティングはできないようになっているのでしょうか?それともほかの原因があるんでしょうか?

  • エクセルの数式について教えてください!

    株取引の表計算について、 ① I列セルの「手数料」(赤色) ② N列セルの「税」(青色) ③ O列セルの「手数料」(緑色) を自動計算する数式を教えてください。 条件1:4種類の取引(「買」「売」「信買」「信売」) 条件2:売買額ごとの手数料 参照したい手数料一覧は、Q1セルです。 例えばQ5セルは、「買」または「売」の売買額が5万円以上10万円以下の場合、手数料99円、という意味です。 ① I列セルの「手数料」(赤色) (例) I3セルは、D3「買」で、かつ、H3「16万円」なので、115円と自動計算したい。 I2セルは、信用「信買」で、かつ、H4が23万円なので、198円と自動計算したい。 ② N列セルの「税」(青色) 取引によって利益が発生した場合、つまり、P列「損益」がプラスであった場合、利益の20.315%が課税(N列「税」)され、利益から引かれます。 N列を自動計算する数式を教えてください。 なお、税が発生しなけば(つまりP列「損益」がマイナスであれば)「-」と表示したいです。 ③ O列セルの「手数料」(緑色) ①と同様、M列「売買額」に応じて自動計算したいが、②を加えた額を表示させたい。 以上、長々とすいません。 よろしくお願いいたします。

  • エクセルのIF関数とVLOOKUP関数について教えてください。

      A B C 1 A1 B1 C1 2 A2 B2 C2 ・ ・ ・ 上記のような表があり、セルX、Yに入力した値が2つの条件に合致した場合、セルZにC列の値を返すような数式を作っています。 たとえば、セルXの値がA1より小さく、かつ、セルYの値がB1より小さい場合にはセルZにC1の値を表示する、という数式を作りたいのです。 (ちなみにAn、Bn、Cnにはそれぞれ数字が入ります) =IF(AND(X<=A1,Y<=B1),C1,IF(AND(X<=A2,Y<=B2),C2,・・・ AND関数を利用してこのように数式を入れると、途中まではうまくいくのですが、引数が多いため途中からエラーが出てしまいます。 (引数の数は10個以上あります) IF関数とVLOOKUPを組み合わせればいいというところまではわかるのですが、どのように条件設定をすればいいのかがわかりません。 エクセル初心者で恐縮ですが、どなたか詳しい方いらっしゃいましたらご回答よろしくお願いいたします。

専門家に質問してみよう