* -------------------------------- *
          相対譜演奏ツール
* -------------------------------- *

■概要 
  エクセル譜面を自動演奏するツール

  Excel（.xlsx）上で記述された「相対譜」を解析し、PC内臓のMIDI音源で演奏します。

  一般的な五線譜ではなく、基準音からの音程差で音を記述する
  独自記譜法「相対譜」を使用しており、
  音楽理論の学習、相対音感の訓練、
  ふと浮かんだメロディーの書き留めや作曲等に活用できます。

■実行ファイル：RelPlay_v1.1.5.exe
■バージョン：1.1.5

■更新履歴
- **2026-01-26**: v1.1.5 開始小節指定時の再生開始までの待ち時間改善
- **2026-01-26**: v1.1.4 「L/F」機能改善
- **2026-01-19**: v1.1.3 初期版作成


■初期版作成日：2026年1月19日
■最終更新日：2026年1月26日
■作者：kuzira-1 (コーディングAI利用)
■連絡先：[メール]h.n10946.laputa@gmail.com [X]kuzira-1@kuzira_nadia
■動作環境
  OS : Windows10,Windows11【動作確認済】
       ※標準的な技術・ライブラリを使用して作成しているため、
         Windows 10 より前のバージョンでも動作する可能性があります。
　Excel : Microsoft Office Home and Business 2019 (Excel 2019) 【動作確認済】
       対応ファイル形式：Excelワークブック(.xlsx)
       ※マクロ有効ワークブック(.xlsm)や旧形式(.xls)には対応しておりません。
       ※.xlsx 形式を扱えるバージョン（Excel 2007以降）であれば、
         以前のバージョンで作成されたファイルでも動作する可能性があります。
■種別：フリーソフト

■譜面サンプルファイル ←☆相対譜に関する詳細説明やテンプレートシートを含んでいます。
  相対譜サンプル.xlsx         ※日本語版
  RelativeNotationSample.xlsx ※英語版


■/* 免責事項 */
本ツールの使用によって生じた、直接的または間接的な損害（データの消失、破損、業務の中断など）
について、作者は一切の責任を負いません。ご利用はすべて自己責任でお願いいたします。


■インストール方法
  ダウンロードしたZIPファイルを任意のフォルダに解凍してください。

■アンインストール方法
  解凍フォルダを削除してください。レジストリは使用していません。

■起動方法
  実行ファイル「RelPlay～.exe」と同じ場所に設定ファイル「relplay.conf」を配置後
  実行ファイルを実行してください。
  
  実行するとメニュー画面が開くと同時に
  PC(Windows)内のMIDIデバイスを読み込み、
  成功すると画面に「MIDI読込成功」と記載されます。
  
  ※本ツールはWindows標準の「Microsoft GS Wavetable Synth」など、
    お使いのPCにインストールされているMIDIデバイスを使用して音を鳴らします。
    特別な設定なしで音が出る場合が多いですが、音が出ない場合はメニュー画面の「MIDIデバイス再読込」
    をお試しいただくか、Windowsの音量ミキサーをご確認ください。

  また、実行ファイルと同じ場所に置かれた設定ファイルの読み込みも同時に行われ
  成功すると画面に「設定読込完了」と記載されます。
  記載されない場合には「設定ファイル再読込」ボタンを押してください。

■譜面再生手順
  1)「譜面ファイル読み込み」ボタンより譜面ファイル(Excel)を選択して読み込みます
  2)「自動演奏」ボタンより自動演奏設定画面を開きます
  3)ファイル選択(上段)、シート選択(下段)にて演奏する譜面を選択します
    ※何も表示されない場合は「リスト更新」を押してください
  4)演奏設定をした後、「再生」ボタンにて演奏を開始します


■主な機能と特徴
Excelファイルをそのまま演奏：
  専用の譜面フォーマットをもとに譜面情報を追記したExcelシートを読み込み、
  ダイレクトに音を鳴らすことができます。

様々な相対指定に対応：
  音名のほか、オクターブ、前音基準、他トラック参照、タグ参照（過去の音高引用）など

演奏設定：
  再生速度(倍率)、開始小節、移調、音量、音色の設定がGUI上で行えます。

楽譜記号の再現：
  リピート（1番・2番括弧）、D.S.（ダル・セーニョ）、D.C.（ダ・カーポ）、
  Coda、Fineといった主要な反復記号に対応。
　注)リピート系の機能は不完全なため、複雑な組み合わせの場合に意図した通りに
    リピートできない場合があります。

日本語・英語の切替対応：
  UI言語を日本語/英語に切り替えられます。

MIDIデバイス自動選択：
  PC内臓のMIDIデバイスを自動認識。

ログ表示/出力：
  演奏中の各パートの音高（C4, E4など）や小節番号などのログ情報を画面表示。
  ログのテキストファイル保存機能。


■相対譜の作成方法
「相対譜サンプル.xlsx」のテンプレートシートをベースにして譜面作成します。
※先頭項目の「***」と4項目目の小節番号は音再生する上で記入必須の項目となります。
※先頭項目の1～3列目に下記値を記載します。
  1列目：「***」
  2列目：1セル分の音符の長さ(1:全音符、2:二分音符、4:四分音符、8:八分音符)
  3列目：テンポ(音符の長さ=1分間に何回)
         例)四分音符が1秒間に60回のテンポ →「4=60」
※3項目目に調(キー)を後述音表現で説明する「1p2q34r5s6t7」の記号を使い記載します。
  例)ハ長調、ハ短調 = 1、へ長調、へ短調=4
※各項目の詳細な説明は「きらきらぼし(1)」シートに記載しています。
※「きらきらぼし(1)～(6)」シートは、すべて同じ演奏内容を異なる方法で記載した譜面サンプルになります。

相対譜では音名を直接入力するのではなく、
調（キー）に基づいた「相対的な音程」を数字と記号で記述します。
自分に合った以下のいずれかの方法で作成できます。

1. 基本の書き方（移動ド・階名による記述）
  「移動ド（キーが変わればドの位置も変わる読み方）」の考え方に基づき、
  数字とアルファベットで音を指定します。

  ・音の記号
  「ド、ド#、レ、レ#、ミ、ファ、ファ#、ソ、ソ#、ラ、ラ#、シ」
  →「 1 p 2 q 3 4 r 5 s 6 t 7 （読み方：イピニクサシルゴスロトナ）」を使用します。
    ※「p, q, r, s, t」は、ハ長調におけるピアノの黒鍵の音に該当します。

  ・オクターブの指定
    低い音域から高い音域に向かって、以下の記号を音記号の前に付けます。
    「 % \ = - （無記号：中央） + x & $ 」
    （例：1オクターブ上のドは +1、中央のドは 1）
  
  記述例： 「ド・ミ・ソ・高いド・（伸ばす）」の場合
  →「1 3 5 +1 -」 （「-」は前の音を伸ばす記号です）
  
2. 前の音からの距離で書く（音程表現）
  「^（上がる）」「v（下がる）」記号を使い、
  直前の音から半音いくつ分離れているかで指定する方法です。
  メロディーの起伏をそのまま入力できるため、直感的な作成が可能です。
  いくつ分の「0個分、1個分、2個分…11個分」にあたる部分を
  「 1 p 2 q 3 4 r 5 s 6 t 7 」記号を使って音程表現として表します。

  ・^2：前の音から半音2個分上がる
  ・vp：前の音から半音1個分下がる
  ・^.（ドット付）：オクターブ単位の大きな跳躍に対応

  記述例： 先ほどの「ド・ミ・ソ・高いド」をこの方法で書くと
  →「1 ^3 ^q ^4」 となり、「1 3 5 +1 -」と同じ音で再生されます。

3. その他の便利な入力方法
  ・固定ド（キーが変わってもドの位置が変わらない読み方）での入力：
      キーに関わらずドの音なら1、レの音なら2のように記述したい場合、
      固定ド形式だと明示的に分かるように *1 *+2 のように先頭に「*」記号を
      付けることを推奨します。

  ・コード参照：[ 記号を使うと、その小節に指定された「コードのベース音」
    からの相対音程で音を鳴らせます。
    ※詳細はサンプルシート等をご参照ください。

  ・リピート指定：リピート専用の項目行に、
    以下の記号を記載することで楽曲構成を制御できます。
    |:、:|、F1（1番括弧）、F2（2番括弧）、D.C.、D.S.、Fine、Coda

  ・ 和音作成の際に別トラックの音からの距離で書く（音程表現）
    「L」「:L」「F」「:F」記号を使い、
    上もしくは下のトラックで指定した音から半音いくつ分離れているかで指定する方法です。
    和音構成音を音程で入力できるため、直感的な作成が可能です。
    半音「0個分、1個分、2個分…11個分」を「 1 p 2 q 3 4 r 5 s 6 t 7 」の記号を使って表します。
    「^」「v」の記載方法と同様に「.」ピリオドをL/Fの直後(音記号の前)に付けることで
    オクターブ単位の大きな跳躍に対応しています。

    ・「L」 ：上のトラックの音(L/F以外で指定された音)を基準
  　・「:L」：上のトラックの音(L/F指定音もOK)を基準
    ・「F」 ：下のトラックの音(L/F以外で指定された音)を基準
    ・「:F」：下のトラックの音(L/F指定音もOK)を基準

    記述例： 和音「ドミソ」を3つのトラックで鳴らす場合
  　→トラック1：F5 ※下の(L/F形式以外の)トラックの音(ド)の音から半音7個分高い音
      トラック2：F3 ※下の(L/F形式以外の)トラックの音(ド)の音から半音4個分高い音
      トラック3：1  ※ドの音
    
    ※この記載方法であれば、基準となるトラックの音を変更するだけで、
      他のトラックの音も自動的に追従して和音が保たれます。

  ・タグ参照：タグ付け用の項目行の対象列に「#1」のように設定することで
    別の列で、#1指定した列の音を「#1.1」「#1.2」のように参照して同じ音を指定することができます。
    .1、.2の数値は参照するトラック番号を表します。
    また「#*.1」は同じ列内の右手用トラック1の音、「#-*.1」は同じ列内の左手用トラック1の音
    を表します。
    ※詳細はサンプルシート等をご参照ください。


記載方法については、
「相対譜サンプル.xlsx」の説明およびサンプルシートもご参照ください。


■相対譜作成にあたって注意事項等
・曲情報の左上(1列目3行目)に「***」を記載してください。
　複数行に分割して並べる場合には分割した曲情報の左上にも「***」を記載してください。
　ツールで曲情報の始まりの行判断で使用しています。
・再生する小節は小節番号を設定してください。未設定の小節は再生されません。
・1小節だけの場合、正しく小節の列数が判定できないため、2小節目の小節番号まで記載してください。
・リピート機能の1番括弧、2番括弧…を表すF1 F2…に関しては、本ツールの再生において1曲の中で
　1度までしか使えません。また他のリピート記号との兼ね合いによっては正しい順番で再生されないこと
　もあります。
・便宜上シート1行目をメロディー項目の行位置の設定が無かった場合のデフォルト位置として
　扱っているため、1行目に音として認識する記号(1,p,^3,#1 等単体の文字)を記載しないでください。
  再生時に一緒に鳴ってしまいます。
・3連符等の連符の譜面は、1拍の列数を3列や6列にする等の対応が必要になります。
・1曲の中でテンポは1つだけ指定できます。途中でテンポを変更できません。
・デフォルトでメロディー項目が右手用、左手用で5行ずつあるので、
　1行を1つの指の弾く音とした記載の仕方もできます。
・スタッカートや装飾音などの細かな音表現は対応していません。



------

* -------------------------------- *
     Relative Notation Player
* -------------------------------- *

■Overview
A tool for automatically playing Excel scores

This tool analyzes "Relative Notation" written in Excel (.xlsx) and plays them using the PC's built-in MIDI sound source.

Instead of standard musical notation, it uses a unique notation method called "Relative Notation," which describes notes by pitch difference from a reference note.

It can be used for learning music theory, training relative pitch,
and for jotting down or composing melodies that come to mind.

■Executable file: RelPlay_v1.1.5.exe
■Version: 1.1.5

■Update History
- **2026-01-26**: v1.1.5 Improved waiting time before playback starts when specifying the starting measure
- **2026-01-26**: v1.1.4 Improved "L/F" function
- **2026-01-19**: v1.1.3 Initial version created

■Initial version creation date: January 19, 2026
■Last updated date: January 26, 2026
■Author: kuzira-1 (using coding AI)
■Contact: [Email] h.n10946.laputa@gmail.com [X] kuzira-1@kuzira_nadia
■Operating Environment
OS: Windows 10, Windows 11 [Operation Confirmed]
*Created using standard technologies and libraries,

it may also work on versions prior to Windows 10.

Excel: Microsoft Office Home and Business 2019 (Excel 2019) [Operation Confirmed]

Supported File Format: Excel Workbook (.xlsx)

*Macro-enabled workbooks (.xlsm) and older formats (.xls) are not supported.

*Files created in previous versions may also work if the version can handle the .xlsx format (Excel 2007 or later).

■Type: Freeware

■Score Sample File ←☆Includes detailed explanations and template sheets regarding relative notation.

"相対譜サンプル.xlsx"  (Japanese version)

RelativeNotationSample.xlsx (English version)

■/* Disclaimer */
The author assumes no responsibility for any direct or indirect damages (such as data loss, corruption, or business interruption) resulting from the use of this tool.
Use is entirely at your own risk.


■Installation Instructions
Extract the downloaded ZIP file to a folder of your choice.

■Uninstallation Instructions
Delete the extracted folder. The registry is not used.

■Startup Instructions
Place the configuration file "relplay.conf" in the same location as the executable file "RelPlay~.exe".

Run the executable file.

Upon execution, a menu screen will open, and simultaneously,
it will read the MIDI devices on your PC (Windows).

If successful, "MIDI読込成功" will be displayed on the screen.

*This tool uses the MIDI devices installed on your PC, such as the standard Windows "Microsoft GS Wavetable Synth," to produce sound.

In most cases, sound will be produced without special settings, but if no sound is produced, please try "Reload MIDI Device" on the menu screen,
or check the Windows volume mixer.

Also, the configuration file placed in the same location as the executable file will be loaded simultaneously.

If successful, "設定読込完了" will be displayed on the screen.

If this message is not displayed, please press the "Reload Config" button.

■ Score Playback Procedure
1) Select and load a score file (Excel) using the "Load Sheet File" button.
2) Open the Playback Settings screen using the "Auto Playback" button.
3) Select the score to play using the file selection (upper row) or sheet selection (lower row).
*If nothing is displayed, press "Refresh List".
4) After setting the playback settings, start playback using the "Play" button.

■ Main Functions and Features
Play Excel files directly:
Load an Excel sheet with score information added based on a dedicated score format,
and play the sound directly.

Supports various relative specifications:
In addition to note names, it supports octaves, previous note reference, other track reference, tag reference (referencing past pitches), etc.

Playback settings:
Playback speed (magnification), starting measure, transposition, volume, and tone can be set on the GUI.

Reproduction of musical notation symbols:
Supports major repeat symbols such as Repeat (first and second brackets), D.S. (Dal Segno), D.C. (Da Capo),
Coda, and Fine.
Note: The repeat function is incomplete, and may not repeat as intended in complex combinations.

Japanese/English language switching:
The UI language can be switched between Japanese and English.

Automatic MIDI device selection:
Automatically recognizes the MIDI device built into the PC.

Log display/output:
Displays log information such as the pitch (C4, E4, etc.) and measure number of each part during performance.
Log can be saved as a text file.


■ How to Create Relative Notation
Create the score using the template sheet of "RelativeNotationSample.xlsx" as a base.
*The first item "***" and the fourth item (measure number) are required fields for sound playback.
*Enter the following values ​​in columns 1-3 of the first item.
Column 1: "***"
Column 2: Note length per cell (1: whole note, 2: half note, 4: quarter note, 8: eighth note)
Column 3: Tempo (note length = number of notes per minute)
  Example) Tempo of 60 quarter notes per second → "4 = 60"
*The key should be entered in the third item using the symbols "1p2q34r5s6t7" which will be explained later in the musical notation section.
  Example) C major, C minor = 1, F major, F minor = 4
*Explanations of each field are described in the "Twinkle(1)" sheet.
*The "Twinkle(1)-(6)" sheets are all sample scores with the same performance content written in different ways.

In relative notation, instead of directly entering note names,
"relative intervals" based on the key are described using numbers and symbols.
You can create it using one of the following methods that suits you:

1. Basic Notation (Notation using Movable Do/Solfège)
Based on the concept of "movable do" (a way of reading where the position of "do" changes when the key changes),
notes are specified using numbers and letters.

• Note Symbols

"Do, Do#, Re, Re#, Mi, Fa, Fa#, So, So#, La, La#, Si"

→ Use "1 p 2 q 3 4 r 5 s 6 t 7 "

* "p, q, r, s, t" correspond to the black keys on a piano in C major.


• Octave Designation

Add the following symbols before the note symbol, moving from lower to higher registers.

"% \ = - (No symbol: middle) + x & $"

(Example: +1 for Do one octave higher, 1 for middle Do)

Example notation: For "Do Mi Sol High-Do -(sustained)"

→ "1 3 5 +1 -" ("-" is the symbol for sustaining the previous note)

2. Writing by distance from the previous note (pitch expression)

Using the symbols "^ (rising)" and "v (falling)",

this method specifies the distance by how many semitones away the previous note is.

Since the fluctuations of the melody can be entered directly, intuitive creation is possible.

The parts corresponding to "0 semitones, 1 semitone, 2 semitones...11 semitones"

are represented as pitch expressions using the symbols "1 p 2 q 3 4 r 5 s 6 t 7".

* ^2: Raises the note by two semitones from the previous note.

* vp: Lowers the note by one semitone from the previous note.

* ^. (with dot): Supports large leaps in octaves.

Example: Writing the previous "Do Mi Sol High-Do -" using this method would result in:
→ "1 ^3 ^q ^4", which plays the same note as "1 3 5 +1 -".

3. Other Useful Input Methods

* Fixed-Do Input (a way of reading where the position of Do does not change even if the key changes):
If you want to write Do as 1 and Re as 2 regardless of the key,
it is recommended to explicitly indicate that it is in fixed-do form by adding an asterisk (*) at the beginning, such as *1 *+2.

* Chord Reference: Using the symbol [, you can play a note at a relative interval from the "bass note of the chord" specified in that measure.

* Please refer to the sample sheet for details.

* Repeat Specification: You can control the song structure by entering the following symbols in the dedicated repeat item row:

|:, :|, F1 (first bracket), F2 (second bracket), D.C., D.S., Fine, Coda

* Writing Chords by Distance from Other Tracks (Pitch Representation)

Using the symbols "L", ":L", "F", and ":F",

this method specifies how many semitones away a note is from a note specified in the track above or below.

Since chord notes can be entered by pitch, intuitive creation is possible.

The semitones "0 semitones, 1 semitone, 2 semitones...11 semitones" are represented using the symbols "1 p 2 q 3 4 r 5 s 6 t 7".

Similar to the notation of "^" and "v," placing a period "." immediately after L/F (before the note symbol) indicates a large leap of octave.

* "L": Based on the sound of the upper track (a note specified other than L/F).


":L": Based on the sound of the upper track (a note specified as L/F is also acceptable).

"F": Based on the sound of the lower track (a note specified other than L/F).

":F": Based on the sound of the lower track (a note specified as L/F is also acceptable).


Example: To play the chord "Do-Mi-Sol" on three tracks:

→ Track 1: F5 *A note 7 semitones higher than the note (Do) of the lower track (non-L/F format).

Track 2: F3 *A note 4 semitones higher than the note (Do) of the lower track (non-L/F format).

Track 3: 1 *Do note.


*With this notation method, simply changing the note of the reference track will automatically adjust the notes of the other tracks, maintaining the chord.


* Tag Reference: By setting the target column in the tagging item row to "#1",

you can reference the note in the column specified as #1 in another column using "#1.1", "#1.2", etc.

The numbers .1 and .2 represent the track number being referenced.

Also, "#*.1" represents the note in track 1 for the right hand within the same column, and "#-*.1" represents the note in track 1 for the left hand within the same column.

*Please refer to the sample sheet for details.

For information on how to write this, please also refer to the explanation and sample sheet in "RelativeNotationSample.xlsx".


■Notes and Precautions Regarding Relative Notation Creation
- Please write "***" in the upper left corner (1st column, 3rd row) of the song information.
- If you split the song information into multiple lines, please also write "***" in the upper left corner of each split section.
- This is used by the tool to determine the starting row of the song information.
- Please set the measure number for the measure to be played. Measures without a set number will not be played.
- If there is only one measure, the number of columns for the measure cannot be correctly determined, so please write the measure number up to the second measure.
- The F1, F2, etc. symbols representing the first, second, etc. of the repeat function can only be used once per song in playback using this tool.
- Also, depending on the interaction with other repeat symbols, playback may not occur in the correct order.

- For convenience, the first row of the sheet is treated as the default position when no row position is set for the melody item.
Therefore, please do not write symbols that are recognized as notes (1, p, ^3, #1, etc., single characters) in the first row.
They will play together during playback.
- For scores with triplets or other tuplets, you will need to adjust the number of columns per beat, such as setting it to 3 or 6 columns.
- Only one tempo can be specified within a song. You cannot change the tempo midway through.
- By default, there are 5 rows each for the right hand and left hand melody items, so you can also write the notes as one note played by one finger per row.
- Fine-tuned note expressions such as staccato and ornaments are not supported.

