フォームのレイアウト
各 Form_ シートは1 つのフォームを記述します。Sheetward はシートのレイアウト — フィールド名がどこにあり、サンプル値がどこにあるか — を読み取り、フィールドとその順序、フォームの形を判断します。このページでは、手早く作れる単一セクションのフォームから、ヘッダーと明細からなる定番のドキュメント型、セクションにグループ化された長いフォームまで、Sheetward が理解するすべてのレイアウトを紹介します。
| 作りたいフォームは… | 使うレイアウト |
|---|---|
| 短い — フィールドが数個(休暇申請、連絡先カード) | 単一セクション:フィールドを列に並べる、またはフィールド : 値のペア |
| 行が繰り返されるドキュメント(発注書、請求書) | 2 セクション:先に HEADER のフィールド、その下に LINE ITEMS テーブル |
| 長い — フィールドが多く、自然なまとまりに分かれる(資産台帳) | グループ化:まとまりごとに大文字の見出しを 1 つ置き、その下にフィールド |
フォームタイトル。フォームの表示タイトルはセル A1 に入力し、その下に空行を 1 行置きます — または、そこから HEADER などのセクションマーカーを始めても構いません。タイトルはアプリでのフォームの見出しになり、空行が「ここでタイトルが終わり、フィールドが始まる」ことを Sheetward に伝えます。
フィールド名を 1 行に並べ、サンプル値をその下の行に置きます
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Part Stock | |||
| 2 | ||||
| 3 | Part | Price | Quantity | Location |
| 4 | CPU Fan | $50 | 10 | Austin |
| 5 | RAM | $500 | 75 | Dallas |
1 行に 1 フィールド — A 列に名前、その隣にサンプル値を置きます
| A | B | |
|---|---|---|
| 1 | Part Stock | |
| 2 | ||
| 3 | Part | CPU Fan |
| 4 | Price | $50 |
| 5 | Quantity | 10 |
| 6 | Location | Austin |
先にヘッダー(ペアまたは列)、その下に LINE ITEMS テーブル(常に列の配置)
| A | B | C | |
|---|---|---|---|
| 1 | Invoice | ||
| 2 | |||
| 3 | HEADER | ||
| 4 | Invoice No | INV-001 | |
| 5 | Customer | Acme Corp | |
| 6 | |||
| 7 | LINE ITEMS | ||
| 8 | Item | Qty | Amount |
| 9 | Widget | 3 | $75 |
| 10 | Gadget | 1 | $120 |
グループごとに大文字の見出しを 1 行置き、その下にフィールドを並べます。アプリは見出しごとに 1 枚のカードを描画します
| A | B | |
|---|---|---|
| 1 | Asset Register | |
| 2 | ||
| 3 | IDENTIFICATION | |
| 4 | Asset Tag | AST-014 |
| 5 | Description | Forklift |
| 6 | ||
| 7 | WARRANTY | |
| 8 | Expires On | 2027-03-31 |
| 9 | ||
| 10 | LOCATION | |
| 11 | Site | Austin |
単一セクションのフォーム — 1 組のフィールドを、2 通りの書き方で記述できます。読みやすいと感じるほうを選んでください:
- フィールドを列に並べる。フィールド名を 1 行に横に並べ、その下の行(複数行でも可)にサンプル値を置きます — 1 列が 1 フィールドの、小さな表の形です。サンプル値は各フィールドのデータ型を Sheetward に教えるためだけのもので、レコードとして取り込まれることはありません。
- フィールド : 値のペア。1 行に 1 フィールド — A 列にフィールド名、その隣にサンプル値を置きます。紙のフォームのように読める形です。
2 セクションのフォーム — 発注書のような定番のドキュメント型です。ヘッダー(1 レコード)の下に繰り返しの明細テーブルが続き、HEADER 行と LINE ITEMS 行で示します:
- ヘッダーセクション:フィールドはどちらの配置でも構いません — 列に並べる、またはフィールド : 値のペアです。
- 明細セクション:常に列の配置です — フィールド名の行を明細行の上に置き、必ずヘッダーセクションの下に配置します。
グループ化されたフォーム — 長いフォームを、読み手に分かりやすいセクションに分けたものです。HEADER の見出しを 1 つだけ書く代わりに、グループごとに見出しを書き、その下にそのグループのフィールドを並べます:
- グループごとに見出しを 1 つ。グループ名を独立した行に置き —
IDENTIFICATION、WARRANTY、LOCATION— その下にフィールドを、どちらの配置(列またはフィールド : 値のペア)でも並べられます。アプリはシートの順序どおりに、見出しごとに 1 枚のカードを描画します。 - 見出しは大文字で。大文字が「この行は値のラベルではなく、グループの始まりだ」という合図になります — Sheetward にとっても、シートを読む人にとってもです。小文字のタイトルはエラーとなり、アップロードが止まります。
- 見出しはそれぞれ別の名前に。アプリはセクション名でカードにラベルを付け、翻訳の対象もセクション名で特定します。そのため、見出しの重複もエラーになります。
- レコードは 1 つのまま。グループ化が変えるのはレイアウトだけです。すべてのフィールドは同じ 1 つのレコードに保存されるため、エクスポート・インポート・ルール・数式は、フォームを分割する前とまったく同じように動作します。
- 1 つのフォームに複数の明細テーブルを持てます。各グリッドには、ヘッダーの下に、
LINESまたはLINE ITEMSで終わるすべて大文字の見出しを付けます —PART LINES、LABOR LINE ITEMSのように、それぞれ固有の名前で。従来どおりの単一のLINE ITEMSテーブルはこれまでと同じように動作します。グリッドが複数になったら、すべての見出しにこの語尾が必要です。こうすることで、誤って貼り付けたテーブルが意図しないセクションとして扱われることを防ぎます。
グループ化の出番は、フォームが長くなったときです — フィールドが十数個を超えたとき、あるいはフィールドが自然なまとまりに分かれるときです。短いフォームにマーカーは一切不要です。セクションのタイトルは翻訳できます。各見出しについて、Translation_ シートに section 行を追加してください。
HEADER と LINE ITEMS の行はあなたの意図をはっきり伝えます — レイアウトが複数の意味に取れそうなときは、必ず使ってください。