◉CLAUDE LABEN
●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り45日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました●2.1.301 — vim の % モーション、VS Code パネルでの LaTeX 数式表示、使用量上限待ちのリトライ監視の上限が入りました(10/15)●2.1.299 — 200K トークン超で約54分放置した会話はアイドル圧縮。MCP の許可ルールは名指ししたサーバーだけに一致します●SONNET 4.5 — Claude API での提供終了は 11/30、残り45日。移行先は Sonnet 5.5●WINDOWS — 日本語の環境でだけフックが黙って壊れる報告があり、文字コードの確認が呼びかけられています●FAST MODE — Opus 5.5 の Fast mode がリサーチプレビューを終え、ベータヘッダーが不要になりました(10/15)●NEW — Cowork に渡したフォルダの先頭に、十行の約束ファイルを置いてみました
記事一覧/Cowork
◈ Cowork/2026-05-03中級

Claude in Chrome × Google スプレッドシート — Apps Script で毎月の単純作業を自動化する

Claude in Chrome を使って Google スプレッドシートの Apps Script を生成・実行する実践ガイドです。プログラミング不要で、データ整形・集計・重複削除を自動化できます。

claude-in-chrome4google-sheetsapps-scriptautomation55google-workspace

毎月末に同じ作業をしていませんか。スプレッドシートのデータを並び替えて、重複を消して、集計表を作り直して……。そのルーティン、Claude in Chrome と Apps Script の組み合わせで大幅に短縮できます。

私自身、複数サイトの GA4 データをシートに集めて月次レポートを作る作業に毎回 30〜40 分かかっていました。それが今では Claude に Apps Script を書いてもらうことで 5 分以内に終わるようになっています。

Apps Script と Claude in Chrome がなぜ相性がいいのか

Google スプレッドシートには「Apps Script」という JavaScript ベースの自動化機能が内蔵されています。マクロを記録する感覚に近いのですが、より柔軟な処理が書けます。ただ、コードを自分で書くのは初心者には少し敷居が高い。

そこで Claude in Chrome の出番です。スプレッドシートを開いた状態でサイドパネルから Claude に「このシートの重複行を削除するスクリプトを書いて」と依頼するだけで、そのまま実行可能なコードが返ってきます。コードの意味が分からなくても、Claude が「このコードは何をするか」を日本語で説明してくれるので安心して使えます。

実際の手順:スクリプトを作って実行するまで

まず Claude in Chrome の拡張機能をインストールして、Google スプレッドシートを開きます。右側のパネルで Claude を起動し、シートの状態を説明しながら依頼します。

ポイント: シートの列名と何を自動化したいかを具体的に伝えると、精度が上がります。「A列に日付、B列に商品名、C列に売上金額が入っていて、B列の重複を削除したい」のように伝えましょう。

Claude が生成したコードを受け取ったら、スプレッドシートの「拡張機能 → Apps Script」から新しいスクリプトを作成し、貼り付けて実行します。

// 重複行を削除するスクリプト(B列を基準にする例)
// Claudeが生成するコードはこのような形式になります
function removeDuplicates() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const data = sheet.getDataRange().getValues();
  const seen = new Set();
  const result = [];
 
  // 1行目(ヘッダー)は必ず保持する
  result.push(data[0]);
 
  for (let i = 1; i < data.length; i++) {
    const key = data[i][1]; // B列(インデックス1)を重複判定の基準とする
    if (!seen.has(key)) {
      seen.add(key);
      result.push(data[i]);
    }
  }
 
  // 元のデータを消去して、重複を除いたデータで上書き
  sheet.clearContents();
  sheet.getRange(1, 1, result.length, result[0].length).setValues(result);
  SpreadsheetApp.getUi().alert(`完了しました。${data.length - result.length} 行を削除しました。`);
}

初回実行時は Google アカウントへの権限許可が求められます。「このアプリは Google が確認していません」という画面が出ますが、自分で作ったスクリプトなので「詳細 → 〈プロジェクト名〉(安全でないページ)に移動」を選んで進めて問題ありません。

実践例1:月次データの自動集計

毎月の売上データが日次でシートに蓄積されているとします。月ごとの合計を別シートに自動転記したい場合、Claude にこう依頼します。

「Sheet1 の A 列に日付(YYYY/MM/DD 形式)、B 列に売上金額が入っています。月ごとの合計を計算して Sheet2 に転記するスクリプトを書いてください」

Claude は SUMIFS 関数を使ったアプローチやループ処理を含むスクリプトを状況に応じて提案してくれます。月が増えても自動的に行が追加されるように書いてもらうのがコツです。

実践例2:条件に応じた自動ハイライト

「売上が前月比で 20% 以上下がった行を赤くしたい」のような条件付き書式も、自然言語で依頼できます。

// 前月比較でハイライトする例(Claudeへの依頼から生成)
function highlightDeclines() {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const lastRow = sheet.getLastRow();
 
  for (let i = 3; i <= lastRow; i++) { // 3行目からデータ開始と仮定
    const current = sheet.getRange(i, 3).getValue();  // C列: 今月売上
    const previous = sheet.getRange(i, 2).getValue(); // B列: 先月売上
 
    if (previous > 0 && (current - previous) / previous < -0.2) {
      // 20%以上減少した行を薄赤でハイライト
      sheet.getRange(i, 1, 1, sheet.getLastColumn())
        .setBackground('#FFCCCC');
    } else {
      sheet.getRange(i, 1, 1, sheet.getLastColumn())
        .setBackground(null); // ハイライト解除
    }
  }
}

コードを実行する前に「このスクリプトで何が起きるか、日本語で説明してください」と Claude に確認してもらう癖をつけると、予期しない上書きを防げます。

制限と注意点

Apps Script には一回あたりの実行時間が 6 分 という制限があります。大量データ(数万行以上)を処理する場合、タイムアウトで途中終了することがあります。その際は Claude に「6 分の制限に対応するため、バッチ処理に分割するコードに書き直してください」と頼むと解決策を提案してくれます。

また、外部サービス(メール送信・外部 API 呼び出し)を含むスクリプトはより広い権限が必要になります。Claude は権限スコープの説明もしてくれますが、不明な場合は「このスクリプトが要求する権限と、その理由を教えてください」と質問してみてください。

Cowork の自動化をさらに深めたい場合は、Cowork スキル×スケジュール活用の設計パターン や Cowork で Gmail を自動管理する実践ガイド も参考になります。

全体を振り返って:今日から試せる最初の一歩

難しく考えず、まずは「毎月手動でやっている単純なシート操作」を Claude に話しかけてみてください。「このシートの空白行をまとめて削除したい」でも「特定のキーワードが含まれる行だけ別シートに移したい」でも構いません。

Apps Script のコードが分からなくても、Claude が生成から説明まで一緒に進めてくれます。最初の一本を動かせたら、次のアイデアは自然と浮かんでくるはずです。

シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

◈ Cowork2026-08-23
コネクタが使えない朝に、待つのか人に返すのかを分ける三つの状態
無人実行でコネクタに届かないとき、原因は起動途中・未認証・恒久欠落の三つに分かれます。それぞれ正しい対処が正反対になる理由と、待機予算を切り分ける判定器の実装をまとめました。
◈ Cowork2026-05-04
Cowork スケジュールタスクが黙って止まる理由と、自動で立ち直る仕組みの作り方
Coworkのスケジュールタスクが黙って止まる原因を、実測した終了コードとエラー文で切り分けます。safe.directory が失敗を遅らせる仕組み、書ける場所を先に決めるプリフライト、理由コード付きログまで扱います。
◈ Cowork2026-10-15
一覧には見えているのに、名前で探すと0件——日本語ファイル名の「濁点が分かれている」問題を数えました
Cowork に渡した作業フォルダで、日本語名のファイルが名前検索に当たらない。約1.9万件を数えると、濁点・半濁点が分かれた名前が17件ありました。数え方と直し方を書き残します。