【要約】15分刻みのExcelスケジュールを、常に最前面に浮く「付箋」にした話(Document Picture-in-Picture) [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
UI/UXデザイナーが、業務で使用する15分刻みのExcelスケジュール管理において、時間の経過を見失うという課題に直面した。既存のExcel環境には、以下の技術的・組織的な制約が存在していた。
- ・ExcelのNOW()関数が、セル編集時以外に自動更新されない。
- ・ブラウザ版Excelを使用しているため、VBA(マクロ)が実行できない。
- ・社内IT環境の制約により、Microsoft Graph APIやEntra IDのアプリ登録が困難である。
- ・Power Automateの実行回数制限により、高頻度な自動更新が実現できない。
// Approach
筆者は、既存のExcel運用を破壊せず、表示層のみを分離する「疎結合な補完」のアプローチを採用した。具体的には以下の手法で実装を行っている。
- ・Document Picture-in-Picture APIを使用し、常に最前面に浮くHTMLウィンドウを生成する。
- ・Excelからコピーしたタブ区切りテキストを、PHP経由でサーバー上のJSONファイルに保存する。
- ・サーバー側では解析を行わず、生のテキストデータをそのまま保持することで、ロジック変更への耐性を高める。
- ・クライアント側で正規表現を用いてテキストを解析し、15分単位のスケジュールへと変換する。
- ・現在時刻から毎秒計算するタイマーを実装し、15分ごとのカウントダウンを表示する。
// Result
この仕組みの導入により、筆者の作業における時間管理能力が劇的に向上した。具体的な改善点は以下の通りである。
- ・Excelを開き直して現在時刻を確認する手間が解消された。
- ・15分ごとのカウントダウンが視界に入ることで、作業の区切りを直感的に把握できるようになった。
- ・schedule.jsonを介することで、会社PCと自宅PCなど、複数端末間でのスケジュール同期を実現した。
- ・「自動化のための自動化」を避けたことで、予定の組み替え作業は従来のExcel操作のまま維持されている。
Senior Engineer Insight
> 既存のワークフローを尊重し、最小限の変更で課題を解決する「UIの補完」という設計思想が極めて合理的である。高度なAPI連携を追わず、コピペという既存の動作をトリガーにした点は、権限制約の厳しい現場における現実的な解だ。また、解析ロジックをクライアント側に寄せ、サーバーには「生の入力」のみを保存する設計は、仕様変更に対する堅牢性を担保しており、運用コストを低く抑える優れた判断である。ただし、社内情報を外部サーバーへ転送するリスクについては、技術以前のガバナンス課題として留意すべきである。