【非エンジニアのためのClaude/Claude Codeシリーズ】スプシ更新作業をなくしたくてClaudeに相談したら、5回失敗してやっと思うとおりに動いた話

【非エンジニアのためのClaude/Claude Codeシリーズ】スプシ更新作業をなくしたくてClaudeに相談したら、5回失敗してやっと思うとおりに動いた話

2026.04.09

このシリーズについて

クラスメソッド 西日本営業本部のhandaです。
この記事は「非エンジニアのためのClaude/Claude Codeシリーズ」の一本で、非エンジニア目線でのClaude活用の体験談を発信しています。
過去の記事は特集カテゴリから見れるので気になる記事があればぜひご覧ください。


はじめに

クラスメソッドでは、エンジニアはもちろん非エンジニアのわたしたち営業も日々の業務で、ClaudeをはじめとするAIを活用しています。これまでは、Gemini、NotebookLMなどGoogleのAIツールを使うことが多かったのですが、営業内でもClaudeを活用する人が増えたのでわたしも使ってみよう!ということで、特集の「Claude Codeを動かす環境を整えてみた」「MCP連携編」を見ながらセットアップをおこないました。

そんな中、営業メンバーによるClaudeブログ特集がはじまりました。
メンバーが挙手してやってみた/参考ブログを執筆するのですが、
だれが・いつ・どんなことを書くのかの管理が煩雑になることが容易に想像できたので、さっそくClaudeを使って特集ブログを管理するカレンダーを作成しました。
・・・が、実際に使ってみると、地味な更新作業が多数発生していることに気づきました。

  • だれが・いつ・どんなことを書くかをカレンダーに入力する
  • ブログ公開後にブログのURLをカレンダーに入力する
  • 執筆者が決まっているかどうかが分からないので、カレンダーに見に行って確認する
  • カレンダーの日程を追加する

どれも1つ1つは大した作業ではありませんが、「誰かが毎回やらないといけない作業」です。これをClaudeに相談してみようと思ったのが今回の話です。

結論から言うと、コードは1行も書かずに実現できました
ただし、思ったとおりに動くまでには何度も失敗しました。このブログではその具体的な内容を書きます。


まずは「やりたいこと」を言語化した

最初に、Claudeに「こういう運用をしているんだけど、どうにかならないかな」と相談しました。
わたしがやりたかったことを整理すると、主に4つでした。

  1. Slackスレッドを監視して、誰かが「〇月〇日書きます」と挙手したらスプレッドシートに記入
  2. 執筆者が決まってない日程を自動検知して、営業チームにSlackでリマインドを送る
  3. ブログ公開後のURLを自動取得してスプレッドシートに記入
  4. 翌月のカレンダーの日程を毎月1日に追加

「これはGoogle Apps Script(GAS)でできます」とClaudeが提案してくれました。
GASについてもあまりよく分かってませんでしたが、「GoogleのサーバーでJavaScriptを動かす仕組みで、PCの電源を切っていても時間になれば自動実行されます。無料で使えます」と説明してもらい、そのまま採用しました。


必要な情報をClaudeと一緒に揃えた

GASのコードを書いてもらうには、いくつかの情報が必要でした。

  • SlackのチャンネルID
  • 監視したいスレッドのタイムスタンプ(TS)
  • 営業チームのSlackユーザーグループID
  • Slack Bot Token

「Slack Bot Tokenってなに?」の質問から始まり、取得手順、申請の流れ、またチャンネルIDやユーザーグループIDなどの必要な情報の調べ方もすべてClaudeが教えてくれました。わからない言葉が出てきたらその場で聞けばすぐに回答が返ってきます。

ここからが本題です。うまくいかなった順にその内容と解決策を書きます。


動かしてみたら5回詰まった

コードが生成されてGASを実行しましたが、思ったとおりに動きません。。。

1回目:「4/16木」という書き方が認識されない

Slackに「4/16木、書きます」と誰かが挙手しても、Slack Botが日付を認識できませんでした。
GASのコードは「4/16」「4月16日」には対応していましたが、「4/16木」のように曜日が後ろについている書き方は認識できなかったようです。

うまくいかなった内容をそのまま「こうなりました」とClaudeに伝えたところ、日付パターンを追加してもらい解決しました。

2回目:カレンダー執筆者欄に「ブログカレンダーBot」と入る

Slack Botが2営業日前リマインドをSlackに投稿すると、そのSlack Bot自身のメッセージを「誰かが挙手した」と誤認してスプレッドシートに「ブログカレンダーBot」と書き込んでしまいました。

Slackのメッセージには「人間が送ったもの」と「Botが送ったもの」を区別する目印があります。修正前のコードはその目印を見ておらず、全メッセージを「人間の発言」として処理していました。そこで「Bot印がついていたら無視する」というコードを3行追加してもらい解決しました。

3回目:RSSがヒットしない

誰かのブログが公開されたのにスプレッドシートに記録されませんでした。

Slackの#rssチャンネルのブログタイトルを元にURLを取得しているのですが、調べてみると取得の際の上限が100件に設定されており、その範囲に対象ブログが含まれていなかったことが原因でした。投稿から時間が経っていたため、100件より古い位置にあったので上限を200件に変更してもらい解決しました。

4回目(ここが一番手強かった):曜日がずれる

翌月日程の自動追加を実行すると曜日が1日ずれて記録されました。

原因はGASのタイムゾーン問題でした。GASは「世界標準時(UTC)」という日本より9時間遅れた時計で動いています。
「5月1日(金曜日)を作って」と指示すると、
GASの内部では「4月30日(木曜日)の午後3時」として処理されてしまい、
スプレッドシートに保存すると日付に「08:00」という時刻が付いたり、
曜日が1日ずれたりしていました。

解決策は「5月1日」を数字ではなく「2026/05/01」という文字列で
指定することと、曜日を取得するときに「日本時間で」と明示することでした。

// ❌ 問題のあったコード
const date = new Date(nextYear, nextMonth, d);
const dow = date.getDay();

// ✅ 修正後
const dateStr = `${nextYear}/${mm}/${dd}`;
const date = new Date(dateStr); // 文字列から生成することでタイムゾーンずれを防ぐ
const dowStr = Utilities.formatDate(date, 'Asia/Tokyo', 'u'); // JSTで曜日を取得

5回目:ヘッダー行が毎月一番下に移動する

翌月分のデータを追加するたびに、スプレッドシートの2〜3行目にあるサブノートとヘッダー行が最下部に移動してしまいました。

原因はソート処理がヘッダー行を含む範囲を対象にしていたことです。
元のコードでは「1行目がヘッダー行」と定義されていましたが、スプレッドシートの実際のデータ開始行は4行目でした。ソート範囲が「2行目から」になっていたため、Date型でない2〜3行目がソート後に最下部に弾き出されていました。

ソート開始行を4行目に変更してもらい、解決しました。

これまでの作業で気づいたことは「こうなりました」「まだ直っていません」と結果をそのままClaudeに伝え続けるだけで解決するまでやり直してくれることです。原因を自分で探す必要もありません。


完成後の状態

5回の修正を経て、以下がすべて自動化されました。

機能 実行タイミング 効果
Slackスレッド監視 → 執筆者自動記入 30分ごと 手入力減少 ※メンバーへのBot周知が必要
執筆者未定リマインド 毎朝9時 見落としゼロ
ブログURL自動取得 毎朝9時 手入力大幅減少 ※メンバーへのブログタイトルルール周知が必要
翌月日程自動追加 毎月1日 手動作業ゼロ

管理工数が大幅に減りました。
Botの認知が低く、手動でスプレッドシート更新している人がいるので
営業チームへのリマインドに「4/16書きます」「来週金曜書きます」のようにこのスレッド内でコメントするだけでカレンダーは更新しておきます」というメッセージを追加しました。

なお、翌月カレンダーの自動追加については6月1日に正しく動くかどうかを現在検証中です。これまでの5回の修正でやっと安定したと思うので来月の結果が楽しみです。


まとめ

今回の体験から、Claudeを使って業務自動化に取り組むときのポイントをまとめます。

① やりたいことを言葉にするだけでいい

技術的な知識は不要です。「この作業が面倒」「こういうことをやりたい」とClaudeにそのまま相談してください。どうすれば出来るのかと最適な解決法をClaudeが提案してくれます。

② わからない言葉はその場で聞く

「GASって何ですか?」「Bot Tokenとは?」何でも聞いてください。ブラウザで調べる必要はありません。

③ 失敗したら結果をそのままコピペする

うまく動かないときは、エラーメッセージやログをそのままClaudeに貼ってください。「こうなりました」「まだ直っていません」「本当にそれでうまく動きますか?」と伝えるだけで解決策を提示してくれます。

今回かかった時間は設計〜動作確認まで1日。コードを1行も書かずに、やりたいことをザックリ説明さえできれば、手作業での繰り返し作業を自動化できるので、ぜひ試してみてください。


この記事をシェアする

関連記事