名刺リストからテンプレメール自動生成(メールへの自動設定付き)
📝 プロンプトの説明
名刺データ(Excel/スプレッドシート)をもとに、会社単位で代表者1名を選定して送信先リストを作成し、指定したメールテンプレートに沿って件名・本文まで自動生成します。会社名の表記ゆれは内部的に正規化して同一会社をまとめ、メモは会社単位で集約します。推測で補完せず、不足情報があれば質問してから作業します 必要に応じてmailtoリンクを生成するところまでを対象とします。
#名刺交換
#交流会
#メール送信
プロンプト
あなたのタスク:
添付の名刺データ(スプレッドシート/Excel)から「会社ごとに1名(代表者)」の送信先リストを作成し、
ユーザが提示するメールテンプレート(件名・本文)に従って「件名」「メール本文」を生成し、
同一ファイル内に新規シート(または新しい表)として追記してください。
重要(必ず守る):
- 推測で情報を補わない(空欄は空欄のまま)
- メール送信はしない(作成のみ)
- 設定情報(列マッピング/テンプレ/代表者ルール等)が不足・不明なら作業を止め、質問して揃ってから開始(推測で作らない)
- テンプレートが提示されない/読み取れない場合は作業停止して不足を報告(勝手に作らない)
────────────────────────
■ 事前ヒアリング(不足があれば最初に質問してから開始)
────────────────────────
1) 対象ファイル/シート
- 対象シート名(または表名):
- ヘッダー行(何行目がヘッダーか):
2) 列マッピング(列記号 or 列名で指定)
- 会社名:
- 部署名:
- 役職:
- 姓:
- 名:
- e-mail:
- メモ(複数列可):
- (任意)抽出条件:例「列Xが〇〇」「列Yが空でない」など。指定がなければ全件対象。
3) 同一会社の判定(正規化キー)
- 正規化する/しない:
- 正規化する場合のルール(未指定なら以下をデフォルト候補として提示し、採用可否をユーザに確認):
- 前後スペース除去(半角/全角)
- 連続スペースを1つに統一
- 英数字の全角/半角ゆれ吸収
- 会社種別表記の同一扱い(例:(株)/(株)/株式会社/㈱)
※出力の「会社名」は元データの表記をそのまま使用(勝手に書き換えない)
※正規化キーは内部利用のみ(出力に出さなくてOK)
4) 代表者の選定ルール(必須)
- 役職ランク(内蔵テンプレ:下記のRank表で判定)
- 複数キーワードが含まれる場合:より上位ランクを採用
- 同ランクのタイブレーク(この順で決定):
1) e-mail が空でない方を優先
2) それでも同じなら、元の行番号が小さい方(先に出てくる方)を優先
4.1) 役職ランク表(内蔵テンプレ)
Rank1(最上位)
- 代表取締役 / 社長 / CEO / 代表 / Owner
Rank2
- 取締役 / COO / CFO / CTO / CxO / 執行役員 / 常務 / 専務 / VP
Rank3
- 本部長 / 事業部長 / 部長 / Director / Head
Rank4
- 課長 / マネージャー / Manager / Lead
Rank5
- 主任 / リーダー
Rank6
- 担当 / メンバー / Staff
Rank7(不明)
- 不明(空欄含む)
4.2) 要確認フラグ(推奨の付与条件)
- 役職が空欄 → 「役職空欄(Rank7)」
- 役職はあるが、上記キーワードに1つも一致しない → 「役職判定不可(キーワード外)」
- 同Rankが複数いてタイブレークで決定 → 「同Rank複数(タイブレーク適用)」
5) メモ集約ルール
- 同一会社(正規化キーが同一)のメモを全件収集
- 空欄は除外し、元データの出現順に箇条書きでまとめる
6) メールテンプレート(必須:ユーザが提示)
- 件名テンプレート(原文):
- 本文テンプレート(原文。署名・改行・敬語レベル含め形式厳守):
- 使用可能な差し込み変数(例。ユーザ指定があればそれを優先):
{会社名}{部署名}{役職}{姓}{名}{メモ集約}
宛名ルール:
- 原則:{役職} {姓}{名} 様
- 役職が空:{姓}{名} 様
- 部署名が空:本文に部署は出さない(補完しない)
メモ反映:
- メモ集約がある場合のみ、本文に1〜2文で自然に反映
- 接点系(展示会/紹介/打合せ等):事実として書ける範囲で触れる
- 要望/関心系:断定を避け「〜にご関心があると伺っております」等で表現
- 社内注意っぽい内容(電話NG等):本文にそのまま書かず、言い回しや連絡手段に反映
- 文脈不明/違和感が出る場合:本文反映は見送り、要確認フラグに「メモ反映見送り(文脈不明)」を記載
7) メール送信リンク(任意)
- 作成する/しない:
- 環境:Google Sheets / Excel(不明なら質問して確認)
- 作成する場合は最終列に、当該行のセル参照で mailto リンクを生成
- e-mail が空欄の行はリンクは空欄
(例:Google Sheets の場合、列順が 6列目=e-mail、8列目=件名、9列目=本文 で2行目なら)
=hyperlink("mailto:"&F2&"?subject="&H2&"&body="&I2, "メールを送信")
※Excelの場合は同等のHYPERLINK式を用いる(環境に合わせて適切な式を採用)
────────────────────────
■ 出力(新規シート or 新しい表)
────────────────────────
- 新規シート名:送信先リスト(ユーザ指定があればそれを優先)
- 列順(必須。ユーザが列順を指定した場合はそれに従う):
1 会社名
2 部署名
3 役職
4 姓
5 名
6 e-mail
7 メモ集約(会社単位で全件)
8 件名
9 メール本文
10 要確認フラグ
11 メール送信リンク(作成する場合のみ。常に最終列)
────────────────────────
■ 最終チェック(必須)
────────────────────────
- 抽出件数(条件指定がある場合)/会社数(代表者数)/メール空欄件数を集計して報告
- ルールに沿わない/判断に迷う点は「要確認フラグ」に理由を明記