Excel講座NG集24本の動画レビューを終えて修正計画へ:A/B並列プレビューと完了印の時刻判定

開発eurekapu-nuxt4

Excel講座NG集24本の動画レビューを終えて修正計画へ:A/B並列プレビューと完了印の時刻判定

朝、自分がやるべき確認を、Googleタスクから Claude Code に洗い出させた。 探していたのは、Excel講座のNG集で作ってもらった「AとBの見比べ」の動画である。 9月30日の13:37に「再現しきれない区間は私の動画を使うパターンも並べて選べるように」と指示し、同じ日の夕方にできあがった4区間だ(経緯は9月30日の記事)。 パターンAは私の動画を改良したもの、パターンBはブラウザ上でExcel画面を再現したものである。 dev の確認画面(/dev/excel-render)で両方を見比べ、良いほうに「完了」を付けるか、フィードバックを書く。

押した「完了」が、どのパターンの、どの版に対するものなのか。 この日は何度か、そこへ戻ってくることになった。

確認画面が開かない:dev サーバーの二重起動

URL を開くと Failed to fetch dynamically imported module が出た。 サーバーを立ち上げるだけでは見られないページなのかと聞くと、原因は別にあった。 3200番の dev サーバーはすでに動いていたのに、同じリポジトリでもう1つ dev サーバーが重ねて起動されていた(Claude Code が起動したもので、ポートが空いていないので3002番に逃げていた)。 2つ目が共有の Vite 依存キャッシュ(node_modules/.cache/vite)を作り直したため、開いていたタブが古いモジュールを読みにいって失敗した、という見立てだった。

重ねたほうを止めてもらい、強制リロードした。 まだ出ない。 3200番のサーバーが古い版のキャッシュを握ったままで、budoux.js が 504(Outdated Optimize Dep)を返していた。 リロードでは直らず、3200番を起動し直してようやく開いた。

AとBを左右対称に:完了ボタンとフィードバック欄を各パターンへ

開いた section=donts-c03-s01 を見て、まず「完了」の位置が気になった。 完了はBにしか付いておらず、しかもプレビュー全体に付いている。 採用するのはAかBのどちらか、もしくは両方なので、全体に付く完了には意味がない。 フィードバックも、AとBのどちらに書いたのかを識別できるはずだ。

そこで、AとBを左右で全く同じ表示にして、ミラーのように並べてほしいと頼んだ。 見比べの4区間だけ excel-render.vue を直してもらい、2560px 幅のスクリーンショットで左右対称になったことを確かめさせた。

並べてみると、別の不便が見えた。 AとBで高さがそろっていない。 しかも完了ボタンは、画面を読み込んだあとから差し込まれる要素で、再生ボタンの上に出る。 再生を押そうとしたところに完了が割り込み、そのたびにマウスを動かすことになる。 再生ボタンの位置を2つの幅で測ってもらい、AとBの高さをそろえ、読み込みの途中でボタンがずれないようにした。

9月30日のフィードバックは手つかずだった

ここで、9月30日の14時ごろに返したフィードバックが気になった。 対応してもらっていたか、修正の計画が残っていないか。 調べさせると、14:04〜14:17に書いた6件は対応されておらず、計画書にも同日夕方のコミットにも入っていなかった。 同じ日の朝7時台に出した「三人 → 三者」の指摘も、直っていなかった。

未対応の修正を集めた別ドキュメントを作り、本計画書と相互にリンクしてもらった。 フィードバックの取得を1分おきに回す仕組みまで動き出したが、それは要らないと止めてもらった。 新しいフィードバックを検知する方法がないのは確かだが、反映してほしいときは私が「反映して」と言えば済む。

「別のサーバー?」と疑った読み込みエラー

しばらくして、画面に「チェック記録を読み込みませんでした」「フィードバックを読み込みませんでした」と出た。 完了やフィードバックは別のサーバーから読んでいたのか、と思って聞いた。 答えは、起動の仕方の問題だった。 dev サーバーを Claude Code のセッションのバックグラウンドで動かしていたため、30分の時間制限で起動元のコマンドが止められていた。 サーバー本体は動き続けていたものの、D1 を読みに行く wrangler と画面再現用の内部サーバーが動かなくなり、500 と 502 を返していた。 3200番を起動し直してもらい、リロードで元に戻った。

朝の二重起動と合わせて、dev サーバーの扱いで二度つまずいたことになる。

ピボットテーブルの自動再集計は、まだ一般向けではなかった

ピボットテーブルは、更新しなくても自動で再集計されるように機能が変わったはずだ。 そうなると、SUMIFS関数で代替できるという説明も変わってくる。 確実にそうなっているはずだと思っていたので、いつのExcelからなのかだけを調べてもらい、フィードバックのドキュメントにも足してもらうことにした。

結果は、思っていたのと少し違った。 自動更新の機能はあるが、2026-10-02 時点ではまだ Microsoft 365 Insider 向けのプレビューだった。 一般の Microsoft 365 や買い切りの Excel では、今も「更新」を押さないと集計し直されない。

動画を撮り直すことになれば、撮り直せばいい。 ただ、一般向けになっても、普及するまでには時間がかかる。 そこで「多くの環境では」を付けて、数年は耐えられる表現にすると決めた。 直す6か所の文案は、フィードバックのドキュメントに書いてもらった。

24本すべてに印が付いた:修正計画と並列での修正

NG集の24本すべてに、フィードバックか完了を付け終えた。 ドキュメントを「確認結果の一覧+修正計画」に作り直してもらった。 計画は Codex でレビューし、致命的な指摘が2件出たので反映して、再レビューで承認を得た。 決めてほしいことは7問あり、Chrome に開いた決裁フォームで答えた。

回答のあとは4つのサブエージェントを動かし、講座本文の修正と並行して区間の台本を直させた。 講座本文には「多くの環境では」を3か所入れた。 修正した10区間(設計の原則の1区間を含む)は、台本、実物の Excel との突き合わせ、本人の声での合成、静止画の確認まで終わった。 ユニットテストだけは PC のメモリが足りなくなって途中で止まり、結果が出ていない。 止められた処理は勝手に流し直さない決まりなので、そのままにしてある。

途中で、共通部品に覚えのない変更が入っているのが見つかった。 並行して動いていた別のセッション(命名ルールの区間の作り直し)のものだったので、こちらでは触らず、コミットにも混ぜなかった。

アウトラインの「1」「2」は縦か横か

グループ化の区間(c03-s01、126秒)では、それまで札で代用していたアウトラインを、エンジンで本物どおりに描くようにした。 静止画9枚で、列番号の上の線と「-」、畳んだときの「+」、行番号の左の線、左上の段の番号(1、2)が出ていることを確かめた。

それでも、見ると違和感があった。 1と2が横に並んでいる。 列をグループ化したら縦に並ぶはずで、横に出るのは行をグループ化したときだ。 元の Excel を録画した動画を見れば分かるはずなので、スクリーンショットを2枚貼って伝えた。 録画と同じになるように直してもらい、列のグループは列の帯の左に縦(1の下に2)、行のグループは列見出しの高さの左上に横(1、2)に出るようになった。 この指摘は、c03-s01 の第2回フィードバックとして修正計画に書き足した。

ここまでをコミットし(2045298c)、追加で返したフィードバック(4区間、5件)も同じセッションで直させた。 c07 の命名の決まりは4つの要素(内容、対象の月、名前、日時)に直し、c07-s00 の作業ファイル名もそれにそろえた(e85904ff)。

完了を付けたあとに作り直した区間

確認すべきところをフルURLで並べてもらったとき、引っかかった。 完了を付けたあとで、もう一度直した区間が2つある。 11時45分に、私はたぶん完了を押し直している。 並べる前に、生成した日時と完了の日時を見比べて判定してほしいと頼んだ。

c04-s00 は 11:45 に完了が付いていて、作り直した 11:29 より後なので、確認済みと判定された。 c07-s00 は作り直しより前の完了しかなく、もう一度見る必要があった。 完了の印は、押したという事実だけでは足りない。 どの版を見て押したのかは、時刻を並べてはじめて分かる。

全選択コピーの区間を別セッションへ

最後に、donts-c02-s01(全選択コピー)にフィードバックを書き、これは別のセッションで取り組んでもらうことにした。 要点は修正計画の §4-3 に書いてコミットした(6bd75160)。 引き継ぎのプロンプトは最初チャットに出てきたが、Downloads フォルダのテキストファイル(handoff_2026-10-02_donts-c02-s01.txt)に書き出してもらった。 元の計画書と、そこから発展した計画書とのあいだにも、相互にリンクを張らせた。

12時30分からのセッションは、このテキストファイルのパスを貼るところから始めた。 構成案(6拍、3つのブック)が出てきて、「y」で通した。 連結パッケージのブックを、値と書式で別のブックへ取り込む例に作り直す案である。 実物の Excel との突き合わせは、3冊とも全セル一致(16/16、14/14)だった。 本人の声での合成は GPU のロック待ちを挟んで終わり、172秒の動画の静止画17枚を確かめた。 コミットのときに Codex の指摘が2件出たので、貼り直しの場面を細かく撮って順序を確かめ、中身で判定し直してもらってからコミットした(d32150aa)。 続けて、ファイル名の版を v2/v3 から日時に直し、講座本文のスライド画像と読み上げも作り直して R2 へ上げた(c4a92011)。 途中、スライドの SVG が .gitignore の対象だったため git add が止まり、残りの4ファイルでコミットし直している。

そこへ、もう1つフィードバックを足した。 全選択しているときにコピーされるのは全てのセルなのに、点線で囲まれているのは取り込み元パッケージの一部だけだった。 少なくともAからZまでは選んでいたはずなので、そこまでは点線で囲まれるのではないか。 書式設定の場面も、第3回フィードバックで書いたとおりに直してほしいと伝えた。 台本に点線用の端のセルと、書式の前の Ctrl+A を入れてもらい、1回目で表(B4:C9)、2回目でシート全体が選ばれる流れになった(551499f4)。 動画の長さは172秒のまま変わらない。 置換の途中で sed -i がガードに止められ、Python でやり直す場面もあった。

締めに、進捗ドキュメントの更新を頼んだ。 D1 には、2026-10-02 13:54 の完了チェックが入っていた。 この印を2本の進捗ドキュメントに反映し、コミットした(18838f06)。

マインドマップの試作でも、AとBを同じ部品で

14時9分からのセッションでは、概要の区間(top)を「A いまの動画/B マインドマップ」で見比べる試作を作らせた。 私が「動画にして」と言ったせいで MP4 の書き出しが始まった。 見たかったのは、再生ボタンで音声とマインドマップが一緒に動くプレビューだったので、書き出しは止めてもらった。

このとき気になったのは、音声が同じで中身だけが違うパターンだ。 その場合は再生ボタンが1つでよく、AとBを同時に動かして、画面の左右で違いだけを見比べたい。 そういう区間を示す識別子は、まだなかった。 top 区間はAとBを左右に並べ、上の「再生」1つで両方が同時に動くようにしてもらった。

ここでも、完了ボタンとフィードバック欄はAにしかなかった。 朝と同じ要望をもう一度出すことになったので、今回は作り直さずに済むよう、部品にまとめてほしいと頼んだ。 AとBを同じ部品(見比べの欄)で組み、ツールバー側の「完了」も同じ部品に置き換えて、重複していた処理を消してもらった。 AとBの両方に完了ボタンとフィードバック欄が出て、画の上端もそろった。 このセッションの引き継ぎも、Downloads フォルダのテキストファイル(excel-mindmap-handoff-20261002.txt)に書き出してもらった。

振り返り

  • 完了の印には、どのパターンのどの版を見て押したかが紐づく。作り直した区間は、完了の時刻と生成の時刻を並べて判定する
  • 「確実にそうなっているはず」と思っていたピボットテーブルの自動再集計は、調べるとまだプレビュー版だった。普及にかかる時間を見込んで「多くの環境では」と書いた
  • 同じUIを2回頼んだら、部品にまとめる
  • dev サーバーの二重起動と、バックグラウンド起動の時間制限で、確認画面が2回止まった

次にやること

  • c07-s00 を見直して、完了を付け直す
  • メモリに余裕があるときに、ユニットテストを回す
#Excel講座#動画レビュー#画面再現#Claude Code#Codex#サブエージェント