google-sheets-ops

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Google Sheets 操作スキル (gog v0.10.0)

Google Sheets 操作技能 (gog v0.10.0)

gog CLI を使ってGoogle スプレッドシートを操作する。
実行パス:
gog
使用gog CLI操作Google Sheets。
执行路径:
gog

Execution Notes

执行注意事项

  • exec
    ツールで実行時、
    timeout: 60
    を指定
  • 大量データ書き込みは分割して実行

  • 使用
    exec
    工具执行时,指定
    timeout: 60
  • 大量数据写入请分批执行

絶対に守るルール

必须遵守的规则

1. セル区切りはパイプ
|
、行区切りはカンマ
,

1. 单元格分隔符用竖线
|
,行分隔符用逗号
,

bash
undefined
bash
undefined

✅ 正しい:1行に3セル

✅ 正确:1行3单元格

gog sheets update "$ID" "シート1!A1:C1" "値1|値2|値3"
gog sheets update "$ID" "シート1!A1:C1" "値1|値2|値3"

✅ 正しい:2行×3列

✅ 正确:2行×3列

gog sheets update "$ID" "シート1!A1:C2" "行1列1|行1列2|行1列3,行2列1|行2列2|行2列3"
gog sheets update "$ID" "シート1!A1:C2" "行1列1|行1列2|行1列3,行2列1|行2列2|行2列3"

❌ 間違い:スペース区切りは全部1セルに入る

❌ 错误:用空格分隔会全部放入同一个单元格

gog sheets update "$ID" "シート1!A1" "値1" "値2" "値3"
undefined
gog sheets update "$ID" "シート1!A1" "値1" "値2" "値3"
undefined

2. カンマ・パイプを含むデータは
--values-json

2. 包含逗号、竖线的数据使用
--values-json

bash
gog sheets update "$ID" "シート1!A1:C2" --values-json '[
  ["名前", "金額", "備考"],
  ["田中", "500,000", "特記|なし"]
]'
bash
gog sheets update "$ID" "シート1!A1:C2" --values-json '[
  ["名前", "金額", "備考"],
  ["田中", "500,000", "特記|なし"]
]'

3. 複数タブは create 時に
--sheets
で全部作る

3. 多个标签页在创建时用
--sheets
一次性创建

bash
gog sheets create "タイトル" --sheets "タブ1,タブ2,タブ3"
⚠️ gogにタブの後追加・削除・リネーム機能はない
bash
gog sheets create "タイトル" --sheets "タブ1,タブ2,タブ3"
⚠️ gog不支持后续添加、删除、重命名标签页

4. 操作前にメタデータ確認

4. 操作前先确认元数据

bash
gog sheets metadata "$ID"  # シート名を確認(日本語ロケールでは「シート1」)
bash
gog sheets metadata "$ID"  # 确认工作表名称(日语环境下为「シート1」)

5. 書き込み後は確認

5. 写入后进行确认

bash
gog sheets get "$ID" "シート1!A1:C2" --json

bash
gog sheets get "$ID" "シート1!A1:C2" --json

コマンドリファレンス

命令参考

読み取り:
get

读取:
get

bash
gog sheets get <spreadsheetId> <range>
bash
gog sheets get <spreadsheetId> <range>

示例

gog sheets get "$ID" "シート1!A1:C10" gog sheets get "$ID" "シート1!A:A" # A列全体 gog sheets get "$ID" "シート1!1:1" # 1行目全体 gog sheets get "$ID" "シート1" --json # JSON出力
undefined
gog sheets get "$ID" "シート1!A1:C10" gog sheets get "$ID" "シート1!A:A" # A列全部 gog sheets get "$ID" "シート1!1:1" # 第1行全部 gog sheets get "$ID" "シート1" --json # JSON格式输出
undefined

書き込み:
update

写入:
update

bash
gog sheets update <spreadsheetId> <range> <values>
bash
gog sheets update <spreadsheetId> <range> <values>

オプション

选项

--input="USER_ENTERED" # 数式・日付を解釈(デフォルト) --input="RAW" # そのまま文字列として入力 --values-json='[[...]]' # JSON形式で値指定 --copy-validation-from="Sheet1!A2" # データ検証をコピー

**例:**

```bash
--input="USER_ENTERED" # 解析公式、日期(默认) --input="RAW" # 直接作为字符串输入 --values-json='[[...]]' # 用JSON格式指定值 --copy-validation-from="Sheet1!A2" # 复制数据验证规则

**示例:**

```bash

単一行

单行写入

gog sheets update "$ID" "シート1!A1:C1" "名前|部署|役職"
gog sheets update "$ID" "シート1!A1:C1" "名前|部署|役職"

複数行

多行写入

gog sheets update "$ID" "シート1!A2:C4" "田中|営業|主任,佐藤|開発|リーダー,鈴木|総務|担当"
gog sheets update "$ID" "シート1!A2:C4" "田中|営業|主任,佐藤|開発|リーダー,鈴木|総務|担当"

JSON形式(推奨:特殊文字を含む場合)

JSON格式(推荐:包含特殊字符时使用)

gog sheets update "$ID" "シート1!A1:B2" --values-json '[["項目","金額"],["売上","1,000,000"]]'
gog sheets update "$ID" "シート1!A1:B2" --values-json '[["項目","金額"],["売上","1,000,000"]]'

数式

写入公式

gog sheets update "$ID" "シート1!D2" "=SUM(B2:C2)"
undefined
gog sheets update "$ID" "シート1!D2" "=SUM(B2:C2)"
undefined

追加:
append

追加:
append

bash
gog sheets append <spreadsheetId> <range> <values>
bash
gog sheets append <spreadsheetId> <range> <values>

例:シート末尾に行追加

示例:在表格末尾追加行

gog sheets append "$ID" "シート1" "新しい|データ|行"
undefined
gog sheets append "$ID" "シート1" "新しい|データ|行"
undefined

クリア:
clear

清空:
clear

bash
gog sheets clear <spreadsheetId> <range>
bash
gog sheets clear <spreadsheetId> <range>

示例

gog sheets clear "$ID" "シート1!A2:C100"
undefined
gog sheets clear "$ID" "シート1!A2:C100"
undefined

書式設定:
format

格式设置:
format

bash
gog sheets format <spreadsheetId> <range> --format-json '<CellFormat>'
bash
gog sheets format <spreadsheetId> <range> --format-json '<CellFormat>'

オプション

选项

--format-fields="userEnteredFormat(backgroundColor,textFormat)"

**書式例:**

```bash
--format-fields="userEnteredFormat(backgroundColor,textFormat)"

**格式示例:**

```bash

ヘッダー書式(青背景・白太字)

标题格式(蓝色背景、白色粗体)

FMT='{"backgroundColor":{"red":0.2,"green":0.4,"blue":0.7},"textFormat":{"bold":true,"foregroundColor":{"red":1,"green":1,"blue":1}}}' gog sheets format "$ID" "シート1!A1:D1" --format-json "$FMT"
FMT='{"backgroundColor":{"red":0.2,"green":0.4,"blue":0.7},"textFormat":{"bold":true,"foregroundColor":{"red":1,"green":1,"blue":1}}}' gog sheets format "$ID" "シート1!A1:D1" --format-json "$FMT"

太字のみ

仅设置粗体

gog sheets format "$ID" "シート1!A1:A10" --format-json '{"textFormat":{"bold":true}}'
gog sheets format "$ID" "シート1!A1:A10" --format-json '{"textFormat":{"bold":true}}'

背景色(薄い黄色)

设置背景色(浅黄色)

gog sheets format "$ID" "シート1!A1:D1" --format-json '{"backgroundColor":{"red":1,"green":1,"blue":0.8}}'
undefined
gog sheets format "$ID" "シート1!A1:D1" --format-json '{"backgroundColor":{"red":1,"green":1,"blue":0.8}}'
undefined

作成:
create

创建:
create

bash
gog sheets create <title> [--sheets "タブ1,タブ2"]
bash
gog sheets create <title> [--sheets "タブ1,タブ2"]

示例

gog sheets create "新規スプレッドシート" gog sheets create "プロジェクト管理" --sheets "概要,タスク,スケジュール"
undefined
gog sheets create "新規スプレッドシート" gog sheets create "プロジェクト管理" --sheets "概要,タスク,スケジュール"
undefined

コピー:
copy

复制:
copy

bash
gog sheets copy <spreadsheetId> <newTitle>
bash
gog sheets copy <spreadsheetId> <newTitle>

示例

gog sheets copy "$TEMPLATE_ID" "請求書_202602_山田様"
undefined
gog sheets copy "$TEMPLATE_ID" "請求書_202602_山田様"
undefined

メタデータ:
metadata

元数据:
metadata

bash
gog sheets metadata <spreadsheetId>
bash
gog sheets metadata <spreadsheetId>

エクスポート:
export

导出:
export

bash
gog sheets export <spreadsheetId> --format <csv|xlsx|pdf>
bash
gog sheets export <spreadsheetId> --format <csv|xlsx|pdf>

示例

gog sheets export "$ID" --format csv gog sheets export "$ID" --format xlsx --output "./backup.xlsx"

---
gog sheets export "$ID" --format csv gog sheets export "$ID" --format xlsx --output "./backup.xlsx"

---

典型ワークフロー

典型工作流

スプレッドシートをゼロから作成

从零开始创建表格

bash
undefined
bash
undefined

1. 作成(タブ全部指定)

1. 创建表格(指定所有标签页)

RESULT=$(gog sheets create "売上管理" --sheets "月次,年次,設定" --json) ID=$(echo "$RESULT" | jq -r '.spreadsheetId')
RESULT=$(gog sheets create "売上管理" --sheets "月次,年次,設定" --json) ID=$(echo "$RESULT" | jq -r '.spreadsheetId')

2. ヘッダー書き込み

2. 写入标题

gog sheets update "$ID" "月次!A1:E1" "日付|商品|数量|単価|金額"
gog sheets update "$ID" "月次!A1:E1" "日付|商品|数量|単価|金額"

3. ヘッダー書式

3. 设置标题格式

FMT='{"backgroundColor":{"red":0.2,"green":0.4,"blue":0.7},"textFormat":{"bold":true,"foregroundColor":{"red":1,"green":1,"blue":1}}}' gog sheets format "$ID" "月次!A1:E1" --format-json "$FMT"
FMT='{"backgroundColor":{"red":0.2,"green":0.4,"blue":0.7},"textFormat":{"bold":true,"foregroundColor":{"red":1,"green":1,"blue":1}}}' gog sheets format "$ID" "月次!A1:E1" --format-json "$FMT"

4. サンプルデータ

4. 写入示例数据

gog sheets update "$ID" "月次!A2:E3" "2026/02/01|商品A|10|1000|=C2D2,2026/02/02|商品B|5|2000|=C3D3"
gog sheets update "$ID" "月次!A2:E3" "2026/02/01|商品A|10|1000|=C2D2,2026/02/02|商品B|5|2000|=C3D3"

5. フォルダ移動(任意)

5. 移动到指定文件夹(可选)

gog drive move "$ID" --parent "<フォルダID>"
undefined
gog drive move "$ID" --parent "<フォルダID>"
undefined

大量データの一括書き込み

批量写入大量数据

bash
gog sheets update "$ID" "シート1!A1:D5" --values-json '[
  ["名前", "部署", "役職", "入社日"],
  ["田中太郎", "営業", "主任", "2024/04/01"],
  ["佐藤花子", "開発", "リーダー", "2023/01/15"],
  ["鈴木一郎", "総務", "担当", "2025/07/01"],
  ["山田次郎", "企画", "マネージャー", "2022/10/01"]
]'
bash
gog sheets update "$ID" "シート1!A1:D5" --values-json '[
  ["名前", "部署", "役職", "入社日"],
  ["田中太郎", "営業", "主任", "2024/04/01"],
  ["佐藤花子", "開発", "リーダー", "2023/01/15"],
  ["鈴木一郎", "総務", "担当", "2025/07/01"],
  ["山田次郎", "企画", "マネージャー", "2022/10/01"]
]'

テンプレートからコピーして編集

从模板复制并编辑

bash
undefined
bash
undefined

1. コピー

1. 复制模板

RESULT=$(gog sheets copy "$TEMPLATE_ID" "請求書_202602_山田様" --json) NEW_ID=$(echo "$RESULT" | jq -r '.id')
RESULT=$(gog sheets copy "$TEMPLATE_ID" "請求書_202602_山田様" --json) NEW_ID=$(echo "$RESULT" | jq -r '.id')

2. 編集

2. 编辑内容

gog sheets update "$NEW_ID" "請求書!B6" "株式会社山田様" gog sheets update "$NEW_ID" "請求書!D10" "コンサルティング業務"

---
gog sheets update "$NEW_ID" "請求書!B6" "株式会社山田様" gog sheets update "$NEW_ID" "請求書!D10" "コンサルティング業務"

---

CellFormat リファレンス

CellFormat 参考

背景色

背景色

json
{"backgroundColor": {"red": 0.9, "green": 0.9, "blue": 0.9}}
RGB値は 0.0〜1.0
json
{"backgroundColor": {"red": 0.9, "green": 0.9, "blue": 0.9}}
RGB值范围为 0.0〜1.0

テキスト書式

文本格式

json
{
  "textFormat": {
    "bold": true,
    "italic": false,
    "strikethrough": false,
    "underline": false,
    "fontSize": 12,
    "foregroundColor": {"red": 0, "green": 0, "blue": 0}
  }
}
json
{
  "textFormat": {
    "bold": true,
    "italic": false,
    "strikethrough": false,
    "underline": false,
    "fontSize": 12,
    "foregroundColor": {"red": 0, "green": 0, "blue": 0}
  }
}

配置

对齐方式

json
{
  "horizontalAlignment": "CENTER",
  "verticalAlignment": "MIDDLE"
}
値:
LEFT
,
CENTER
,
RIGHT
/
TOP
,
MIDDLE
,
BOTTOM
json
{
  "horizontalAlignment": "CENTER",
  "verticalAlignment": "MIDDLE"
}
可选值:
LEFT
,
CENTER
,
RIGHT
/
TOP
,
MIDDLE
,
BOTTOM

罫線

边框

json
{
  "borders": {
    "top": {"style": "SOLID", "color": {"red": 0, "green": 0, "blue": 0}},
    "bottom": {"style": "SOLID"},
    "left": {"style": "SOLID"},
    "right": {"style": "SOLID"}
  }
}

json
{
  "borders": {
    "top": {"style": "SOLID", "color": {"red": 0, "green": 0, "blue": 0}},
    "bottom": {"style": "SOLID"},
    "left": {"style": "SOLID"},
    "right": {"style": "SOLID"}
  }
}

gogでできないこと

gog无法实现的操作

以下は Sheets API batchUpdate が必要:
  • タブの後追加・削除・リネーム
  • 入力規則(ドロップダウン)
  • 条件付き書式
  • セル結合
  • 列幅・行高調整
  • 行/列の固定(フリーズ)
  • フィルター・チャート

以下操作需要使用Sheets API batchUpdate:
  • 后续添加、删除、重命名标签页
  • 输入规则(下拉菜单)
  • 条件格式
  • 单元格合并
  • 调整列宽、行高
  • 冻结行/列
  • 筛选器、图表

よくあるミス

常见错误

ミス正しい方法
update "A1" "a" "b" "c"
update "A1:C1" "a|b|c"
カンマ入り数値
1,000
--values-json
を使う
シート名間違い
metadata
で確認
範囲指定なし必ず範囲を明示
错误操作正确方法
update "A1" "a" "b" "c"
`update "A1:C1" "a
输入带逗号的数值
1,000
使用
--values-json
工作表名称错误使用
metadata
确认
未指定范围必须明确指定范围