どちらの関数も条件を指定し、その結果が真実(TRUE)か否か(False)を判定する関数です。
条件を指定するなら、このブログでも扱ってるIF関数がありますが、IF関数は、条件の対象セルに対して1つしか条件を設定できません。
どういうことかというと、例えば対象のセルが「100より小さければ」・・・とか、セルが「青森太郎ならば」・・・とか一つの条件から処理が分岐されていきます。関数を重ねるネストを使えば複数条件の分岐も可能ですが、それでは、数式が複雑になってしまいます。
このAND、OR関数を使うと一つのセルまたは複数のセルに対し複数の条件を指定することができます。
引数は次の通りです。
AND(論理式1,論理式2,・・・・)
OR(論理式1,論理式2,・・・・)
論理式とは要するに条件です。
論理式には30個くらい指定できるそうです。ただ、あんまり指定しても訳がわからなくなるので程々に。
このような表を作成しました。
顧客の売上明細です。
まずはAND関数を使い、上部にある請求期間により請求書を発行する明細を特定します。
AND関数は引数に指定する条件をすべて満たしたとき「TRUE」、満たさないとき「FALSE」という値を返します。
※図をクリックすると大きく表示されます。

実際に関数を入力してみます。
データの売上日が期間のセル「C2」と「E2」の間ならば「〇」、そうでない場合は「☓」が表示される式を作ります。
まずはAND関数のみで作ってみましょう。
セル「H5」を選択し、「=AND(」まで入力します。
まずは論理式1です。売上日が期間最初のセル「C2」以上であるか判定する式を入力します。
データの売上日、「C5」をクリックします。
「以上」を表す比較演算子の「>=」を入力し期間最初のセル「C2」をクリックします(絶対参照にしましょう)。これで一つ目の論理式が完成です。
データの売上日が期間最初の日付以上ですか?という意味になります。「,」で区切ります。

もう一つの論理式を入力します。
データ売上日、「C5」をクリックします。
今度は「以下」を示す「<=」を入力し期間終了のセル「E2」をクリックします(絶対参照にしましょう)。
二つ目の論理式も完成しました。
データの売上日が期間終了の日付以下ですか?という意味になります。
この二つの条件を満たすとき、つまりデータの売上日が2月1日以上で2月10日以下であれば「TRUE」それ以外は「FALSE」となります。

「)」で閉じてEnterキーを押してみましょう。

満たしているという意味で「TRUE」が表示されました。
さて、AND関数だけでは、これ以上はなにもできません。
ここでIF関数(※IF関数の回を参照)と組みわせてはじめて真価を発揮します。
IF関数の引数は、IF(①条件,②条件を満たしたときの処理,③それ以外の処理)です。この①条件の部分にAND関数を引数としてあてはめます。
IF関数を使いもう一度内容を修正します。
IF関数の引数、①条件にAND関数を適用します。
②条件を満たした時、は「〇」を表示、③それ以外の時は「☓」を表示します。
図のように入力されていればOKです。

Enterキーを押します。

正しく表示されました。下のデータにもコピーしましょう。

期間内のデータだけに〇が付きました。
試しに期間終了セルを「4/30」と修正します。

売上日が5月以外のデータに「〇」が表示されました。
日付の他にも数量や金額に上限の設定をするなど、いろんな組み合わせが可能ですね。
AND・OR関数②につづく
0 件のコメント:
コメントを投稿