STEPmini は、Google スプレッドシートと Google Apps Script(GAS)で動く、ステップメール配信ツールです。
以下の手順で、あなた専用のコピーを作成してご利用ください。
1. STEPmini をコピーする
まず、以下のリンクを開いてください。
https://docs.google.com/spreadsheets/d/1151617vd8NXh5R0BUIuDvnvplF6VJoMLjcW6-r9NAOU/copy
リンクを開くとコピー画面が表示されます。
「コピーを作成」 をクリックしてください。
2. コピー後、シート名を確認する
コピーしたスプレッドシートを開いたら、次の5つのシートがあることを確認してください。
settingsscenariosstepscustomerslogs
この5シートが、STEPminiの基本構成です。
シート名はGASで直接指定されているため、名前を変更しないでください。
3. Apps Script が入っているか確認する
上部メニューから
拡張機能 → Apps Script
を開いてください。
Apps Script 画面が開いたら、コードの中に runStepMiniBatch() という関数があるか確認してください。
これがSTEPminiの配信処理本体です。
4. 初回のみ権限を許可する
Apps Script 画面で runStepMiniBatch を選んで一度実行してください。
初回は Google の認証画面が表示されます。
画面に従って、ご自身の Google アカウントで権限を許可してください。
この処理では、スプレッドシートの読み書きやメール送信の権限が必要になります。
権限許可が終わっていないと、STEPminiは動作しません。
5. settings シートを設定する
settings シートは、A列に設定キー、B列に値を入れる形式です。
GASはこの形で設定を読み取ります。
このコードで実際に参照している主な設定項目は次の通りです。
global_activesignaturereply_tofrom_name
設定例
| A列(key) | B列(value) |
|---|---|
| global_active | TRUE |
| from_name | STEPmini |
| reply_to | yourmail@example.com |
| signature | 株式会社〇〇\nSTEPmini担当 |
global_active が TRUE でない場合、配信は停止します。
6. scenarios シートを設定する
scenarios シートでは、配信シナリオを管理します。
このコードでは少なくとも次を参照しています。
- 1列目:
scenarioId - 3列目:有効/無効
1列目にシナリオIDを入れ、3列目を TRUE にしたシナリオだけが有効になります。
例
| A列 | B列 | C列 |
|---|---|---|
| welcome_01 | 初回案内 | TRUE |
※ B列はコード上では直接参照していませんが、管理用の名称列として使って問題ありません。
7. steps シートを設定する
steps シートは、各シナリオの配信内容を定義するシートです。
このコードでは次の列順で読んでいます。
- 1列目:
scenarioId - 2列目:
stepNo - 3列目:
days - 4列目:
enabled - 5列目:
subject - 6列目:
body - 7列目:
sendTime
例
| scenarioId | stepNo | days | enabled | subject | body | sendTime |
|---|---|---|---|---|---|---|
| welcome_01 | 1 | 0 | TRUE | はじめまして {name} 様 | {name} 様\nご登録ありがとうございます。 | 9:00 |
| welcome_01 | 2 | 3 | TRUE | 3日後のご案内 | {company} 様向けのご案内です。 | 9:00 |
テンプレート差し込み
本文と件名では、次の差し込みが使えます。
{name}{company}
この2つはGASで置換されています。
8. customers シートを設定する
customers シートは、配信対象の顧客一覧です。
このコードでは次の9列を前提にしています。
customerIdnamecompanyemailstartDatetagstopFlagmemoscenarioId
例
| customerId | name | company | startDate | tag | stopFlag | memo | scenarioId | |
|---|---|---|---|---|---|---|---|---|
| C001 | 山田太郎 | 株式会社テスト | test@example.com | 2026/05/06 | 見込み客 | FALSE | 初回登録 | welcome_01 |
注意点
emailは正しいメールアドレス形式が必要ですstartDateが空だと送信されませんstopFlagが TRUE の場合は停止されます- 9列目の
scenarioIdが空だと送信対象になりません
9. logs シートについて
logs シートは送信結果の記録用です。
バッチ実行時に、送信結果が末尾へ追加されます。
記録される内容は次の順です。
- 実行日時
- customerId
- scenarioId
- stepNo
- 結果(
SUCCESSまたはERROR) - エラーメッセージ
- 予備欄
このログをもとに、すでに送信済みかどうかを判定しています。
10. 配信テストを行う
本番前に、必ず自分のメールアドレスでテストしてください。
おすすめの流れは次の通りです。
scenariosにテスト用シナリオを1件作るstepsに1通目を登録するcustomersに自分のメールアドレスを登録するstartDateを今日にするrunStepMiniBatch()を実行するlogsにSUCCESSが入るか確認する
このSTEPminiは、1顧客1日1通まで の動きになっています。
同じ日に複数通は送られません。
11. 自動配信したい場合はトリガーを設定する
手動実行だけでなく自動実行したい場合は、Apps Script のトリガーを設定してください。
Apps Script 画面の左側から トリガー を開き、runStepMiniBatch を時間主導で定期実行に設定します。
例:
- 1日1回
- 1時間ごと
運用に合わせて設定してください。
12. うまく動かないときの確認ポイント
シート名を変えていないか
customers / scenarios / steps / logs / settings でないと認識されません。
settings の global_active が TRUE か
FALSE や空欄だと配信停止になります。
customers の scenarioId が入っているか
9列目が空だと送られません。
scenarios 側でそのシナリオが有効か
scenarioId が存在していて、3列目が TRUE である必要があります。
steps に有効なステップがあるか
4列目 enabled が TRUE の行だけ対象です。
startDate が正しい日付か
日付として解釈できないと送信されません。
13. ご利用上の注意
- シート名や列順を大きく変えると動かなくなります
- 初回は必ずテスト送信を行ってください
- Googleアカウントのメール送信上限にご注意ください
- 送信履歴は
logsシートに残ります - 配信停止したい顧客は
stopFlagを TRUE にしてください





コメント