Excelでメジャーセブンを判定!IF,AND,ORの使い方 (dur編)

Excelでメジャーセブンを判定!IF,AND,ORの使い方 Excel

Excelが「メジャーセブン」を見抜く瞬間!複雑な条件分岐を制する AND OR IF

山本式和音番号の構築プロジェクトも、いよいよシステムの核心部である数式の実装へと、その歩みを深く進めています。

↓↓↓最初の記事です。まだの方は是非↓↓↓

前回の記事では、 INDEX INDIRECT 関数を組み合わせ、和音の骨格となる「ルート音」を導出する、非常に強力な動的参照のロジックを解き明かしました。

↓↓↓前回の記事です↓↓↓

和音変換システムの「表現力」を拡張する

R列の「M」が示す和音の性質

さて、今回は DB_山本式和音 シートの R列に、 “M” という記号を表示させるための論理体系を構築します。

この “M” は、 CM7FM7 のように、和音の響きを優雅に、あるいは緊張感のあるものに特徴づける「メジャーセブン」の性質を示す、極めて重要な記号です。

CM7 や FM7の楽譜

Excelにこの “M” を、適切な和音に対してのみ正確に表示させることで、私たちの和音変換システムの表現力は飛躍的に向上します。

今回のテーマは、「複雑な条件分岐を、いかにシンプルに、そして正確に記述するか」です。

AND OR IF という、Excelを触ったことがある方なら誰もが知る基本的な論理関数。

これらを組み合わせるだけで、驚くほど複雑で精緻な条件分岐を実現できることを、これから証明していきます。

この論理の構築こそが、Excelの真価を発揮する鍵となるのです。

STEP1:論理演算の基本 AND 関数と OR 関数を理解する

複雑な数式を解き明かす前に、まずはその構成部品となる、 AND関数と OR関数の基本的な使い方について、改めて確認しておきましょう。

AND(条件1, 条件2, …) :すべての条件が真の時にのみ真を返す

まず、 AND関数は、Excelで「A、かつ、B」という論理を表現するための関数です。

複数の条件を引数として受け取り、そのすべての条件が TRUE (真)の場合にのみ、結果として TRUE を返します。

一つでも FALSE (偽)の条件があれば、結果は FALSE となります。

例えば、 =AND(A1>10, B1=”テキスト”) という数式は、「 A1 セルの値が10より大きく、かつ、 B1 セルの値が”テキスト“である」場合にのみ TRUE を返します。

複数の条件が同時に成立しているかを厳密に判定する際に、不可欠な関数です。

AND関数についての説明

OR(条件1, 条件2, …) :いずれかの条件が真の時に真を返す

次に、 OR関数は、Excelで「A、または、B」という論理を表現するための関数です。

こちらも複数の条件を引数として受け取りますが、そのいずれか一つでも条件が TRUE (真)であれば、結果として TRUE を返します。

すべての条件FALSE (偽)の場合にのみ、結果は FALSE となります。

例えば、 =OR(C1=”はい”, D1>100) という数式は、「 C1 セルの値が”はい“であるか、または、 D1 セルの値が100より大きいか」のどちらかを満たしていれば TRUE を返します。

複数の選択肢のうち、いずれか一つでも合致するかを判定する際に用います。

OR関数についての説明

STEP2: IF 関数で条件分岐を制御する

AND OR が条件を評価する関数であるのに対し、その評価結果に基づいて、具体的な処理を分岐させるのが IF関数です。

IF(条件, 真の場合, 偽の場合) :条件分岐の要

IF関数は、Excelにおける条件分岐の、まさに要(かなめ)となる関数です。

その構造は非常にシンプルで、「指定した条件が TRUE (真)であれば『真の場合』の値を、 FALSE (偽)であれば『偽の場合』の値を返す」という働きをします。

今回の数式では、後ほど解説する AND OR を組み合わせた複雑な条件式を、この IF関数の第一引数( 条件 )に設定します。

そして、その条件が満たされた場合に “M” を表示し、満たされなかった場合に “” (空白)を表示する、という最終的な決定を下す役割を担います。

この IF関数こそが数式全体の骨格となるのです。

IF関数についての説明

STEP3: “M” を表示させるロジック

基本関数の役割を理解したところで、いよいよ今回の主役である、 R 列の数式を徹底的に解剖していきます。

この一つの数式に、いかに多くの音楽理論とデータ設計思想が凝縮されているか、ご覧ください。

Excelの画面

複雑な条件を AND と OR でシンプルに記述する

R列( M フラグ)に記述する数式全体

まず、 DB_山本式和音 シートの R2 セルに、以下の数式を入力します。

=IF(OR(AND(OR(F2=1,F2=4),G2>=7,I2=””,J2=””),AND(F2=6,G2=7,I2=””,J2<>””)),”M“,””)

この数式は、一見すると非常に複雑に見えるかもしれません。

しかし、ご安心ください。

これは、これまで学んだ IF OR AND の3つの関数だけで構成されています。

そして、この数式一つで、定義した長調におけるすべての和音パターンを網羅し、 “M” を表示すべきかどうかを正確に判定します。

OR 関数の外枠:二つの主要条件グループ

この数式の IF関数の中身(論理式)は、全体が大きな OR関数で構成されています。

これは、 “M” が表示される条件が、大きく分けて2つのパターン(条件グループA条件グループB)に分類できることを意味します。

このどちらかの条件グループが満たされれば、 “M” が表示される、という構造です。

それでは、各条件グループを詳細に見ていきましょう。

AND(OR(F2=1,F2=4),G2>=7,I2=””,J2=””) (条件Aグループの詳細)

最初の AND グループは、「基本的な長調のメジャーセブン和音」を特定するための条件式です。

この AND 関数が TRUE を返すためには、以下の4つの条件がすべて満たされる必要があります。

OR(F2=1,F2=4) : [度] 列である F2 セルが 1 (I度)または 4 (IV度)であること

長調において、I度IV度の主要三和音は長三和音(メジャー)であり、これらがメジャーセブン( CM7 , FM7 など)になるための基本条件です。

G2>=7 : [7/9] 列である G2 セルが 7 以上( 7 または 9 )であること

和音に7th以上のテンションが付加され、四和音以上になっていることを示します。

7の和音の楽譜
I2=”” : [根省] 列である I2 セルが空白であること

根音省略8 )によって和音の性質が変わるケースを除外しています。

根音省略にするとコードネームが変わる例
J2=”” : [借用] 列である J2 セルが空白であること

借用和音ではない、純粋な長調の和音であることを示します。

つまり、この条件Aグループは「I度またはIV度の和音で、7th以上のテンションを持ち、かつ根音省略でも借用和音でもない場合」という、非常に明確な条件を定義しているのです。

Excelでの挙動

AND(F2=6,G2=7,I2=””,J2<>””) (条件Bグループの詳細)

次の AND グループは、一見すると “M” とは結びつきにくい、「特殊な借用和音」を特定するための条件式です。

この AND 関数が TRUE を返すためには、以下の4つの条件がすべて満たされる必要があります。

  • F2=6 : [度] 列が 6 (VI度)であること。
  • G2=7 : [7/9] 列が 7 (7th)であること。
  • I2=”” : [根省] 列が空白であること。
  • J2<>”” : [借用] 列が空白ではない、つまり借用和音フラグ 0 が入力されていること。
Excelでの挙動

ここで重要なのは J2<>”” という条件です。

なぜ J2=0 としないのか?

それは、Excelの挙動として、完全に空白のセルを 0 として解釈してしまう場合があるからです。

借用和音ではない(空白)」と「借用和音である0 が入力されている)」を厳密に区別するため、あえて「空白かどうか」で判定しているのです。

これは、システムの堅牢性を高めるための、意図的な数式設計です。

では、なぜ「借用和音のVI度7」が “M” になるのでしょうか?

山本式和音番号の哲学によれば、長調における借用和音は、多くの場合、同主短調から機能を借ります。

例えば、C durにおける「借用和音のVI度7」は、c moll(ハ短調)の和声的短音階におけるVI度7和音、すなわち A♭M7 (構成音: As, C, Es, Gを指します。

A♭M7の楽譜

この A♭M7 は、その名の通りメジャーセブンスの性質を持つため、 “M” を表示するのが正しい、というわけです。

まとめ:Excelが「和音の響き」を理解する!複雑な条件分岐も自由自在!

今回の記事では、 AND OR IF という、Excelにおける最も基本的な論理関数だけを組み合わせることで、いかに複雑な音楽理論上の条件分岐を、シンプルかつ正確に記述できるかを学びました。

M” という、たった一文字の記号を表示させるために、和音の度数テンション根音省略借用和音といった複数の要素が、数式の中でどのように連携し、評価されるのか、その精緻なロジックを解き明かしました。

一見すると複雑な数式も、一つ一つの要素を丁寧に分解していけば、その背後にある論理と、山本式和音番号の哲学が見えてきます。

さて、これで和音の「響き」を決定する重要な要素を、Excelが自動で判断できるようになりました。

次回の記事では、いよいよ、これまで導出してきたルート音や “M” フラグ、そしてその他の要素を統合し、具体的なコードネームを組み立てる、次の段階へと進んでいきます。

お楽しみに!

<続く>※現在作成中

タイトルとURLをコピーしました