未だにExcel方眼紙で作成された詳細設計書を使わなければいけない…
でもAIは使いたい…
そんな悩みを抱いていた私がこうすればいけるんじゃないか?というものを思いついたので
本日は共有したいと思います。
Excel方眼紙で作られた詳細設計書をAIに読み込ませる際、
コピー時にインデントがずれたり、選択漏れによるヌケモレが発生することありませんか?
私はあります。
これを防ぐためになにか方法はないかと考え、
各行のA列から「式を置いたセルの1つ左」までを1本の文字列に連結してその行をコピーすることでヌケモレなく渡すことができました。
ここでは、オートフィルやテーブル化でも壊れにくい安定版の式と運用手順を解説します。
Excel方眼紙仕様書用ファイナルアルティメット最終式
次の式を、出力したい列のセルに入力してください(B列以降に置く想定)。
=IF(COLUMN()>1, TEXTJOIN("", TRUE, INDEX($A:$A, ROW()):INDEX($1:$1048576, ROW(), COLUMN()-1)), "")
- IF(COLUMN()>1, …, ""): A列に置いたとき(左隣が無い)は空文字を返す安全策。
- TEXTJOIN("", TRUE, …): 区切りなしで連結。第2引数TRUEで空白セルを無視。
- INDEX($A:$A, ROW()): 現在行のA列セル(開始点)。列参照を絶対参照で固定。
- INDEX($1:$1048576, ROW(), COLUMN()-1): 現在行の「1つ左のセル」(終点)。行範囲を絶対参照に固定してオートフィルでも崩れない。
対応バージョン: Excel 2019 / Microsoft 365(TEXTJOIN対応環境)
導入手順(最後の行まで一括反映)
- 出力用の空き列を用意(例: データの右隣列)。
- その列の先頭行に上記の式を入力。
- セル右下のフィルハンドルをダブルクリックして下方へ一括適用。
- または範囲をテーブル化(Ctrl+T / ⌘+T)して列に式を入れると、新規行にも自動で適用。
ポイント
- フィルが途中で止まる場合は、左隣列に連続データが必要です。テーブル化が最も確実です。
出力の読みやすさを上げる(区切りの指定)
- 区切りなし(デフォルト)
- そのまま文字が連続します(AI側でフィールド分割不要なケース向け)。
- パイプ区切りにする例
=IF(COLUMN()>1, TEXTJOIN(" | ", TRUE, INDEX($A:$A, ROW()):INDEX($1:$1048576, ROW(), COLUMN()-1)), "") - タブ区切りにする例(AIが列認識しやすい)
=IF(COLUMN()>1, TEXTJOIN(CHAR(9), TRUE, INDEX($A:$A, ROW()):INDEX($1:$1048576, ROW(), COLUMN()-1)), "") - セル内改行にする例(用途に応じて)
表示で「折り返して全体を表示」を有効にしてください。
=IF(COLUMN()>1, TEXTJOIN(CHAR(10), TRUE, INDEX($A:$A, ROW()):INDEX($1:$1048576, ROW(), COLUMN()-1)), "")
実運用のコツ
- 出力列をコピーしてAIに貼り付けるだけで、各行の内容を漏れなく渡せます。
- 区切りはまずタブ(
CHAR(9)) を推奨。AIの前処理で列認識されやすい傾向があります。 - 列追加・削除があっても、式の位置に自動追従します(「A列から左隣まで」を常に対象)。
まとめ(チェックリスト)
-
上記の完成形式をB列以降に設定したか
-
フィルハンドルのダブルクリックまたはテーブル化で最終行まで適用したか
-
必要に応じて適切な区切り(タブ/パイプ/改行)に変更したか
-
出力列のみをコピーしてAIに渡しているか
-
主要ポイント
- 採用式は絶対参照を使うため、オートフィルやテーブル化でも崩れません。
- A列から「式セルの左隣」までを空白スキップで連結でき、コピー漏れを防げます。