Google Apps Script の記事一覧
Chrome拡張機能とGAS連携を止まりにくくする運用設計
Chrome拡張機能からGAS Webアプリへ大量データを送る業務ツールで、中断再開、分割POST、シート自動拡張、履歴DBと最新値シートの分離、状態表示UI、バージョン情報をまとめて設計する方法を解説します。
Chrome拡張機能からGAS Webアプリへ安全に定期POSTする設計
Chrome拡張機能でログイン済み画面を定期確認し、GAS Webアプリへ安全にPOSTしてスプレッドシートへ追記する設計をまとめます。設定画面、実行状態、トークン認証、一括追記、納品手順まで整理します。
GAS数式シートを入力セル差し替えで使い回す: 変換ロジックをコードから分離する
外部システム向けCSVの項目マッピングをGASに書かず、スプレッドシートの数式へ寄せる設計をまとめます。GASは入力セルを差し替え、SpreadsheetApp.flush()後に出力シートを回収する役割にします。
GASで郵便番号から住所補完するときは予備APIまで用意する
GAS Webアプリで郵便番号から住所を自動補完するときに、外部APIの空レスポンスや非JSON応答で画面を止めないための防御策と、予備APIへのフォールバック設計をまとめます。
GASで都道府県×タイプの2次元マスタを動的列で読む
都道府県ごと、商品タイプごとに値が変わる送料やクール区分を、固定列番号ではなく見出し名で読むGASの実装パターンをまとめます。列を増やしてもコード変更しないための2次元マスタ設計です。
GASでShift-JIS CSVを入出力する方法: Drive保存・複数ファイル取込・桁落ち回避
GASでShift-JISのCSVを書き出し、ブラウザ側のFileReaderでShift-JIS CSVを複数ファイル取り込む実装パターンをまとめます。長い伝票番号の科学表記化や桁落ちを避ける運用上の注意点も整理します。
Excel VBAからGAS Web APIへTSVでPOSTする実装定石
Excel VBAからGAS WebアプリへTSVを直接POSTするときの認証、302リダイレクト、UTF-8、全行検証、LockServiceの定石をまとめます。
GASでシートに書くトークンは書式なしテキストに固定する
UUID由来の16進トークンをGoogleスプレッドシートへ保存するとき、数値や指数表記として解釈される不具合を防ぐために書式なしテキストへ固定する方法をまとめます。
GAS Webアプリで1レコード1ページの印刷PDFを作る
GAS Webアプリから改ページ付き帳票を印刷するために、iframe、ポップアップブロック、Chromeの余白設定を回避する実装パターンをまとめます。
GAS Webアプリで本人限定表示をトークンURLで実現する
GAS Webアプリでログインなしに本人用画面を見せるとき、氏名などの推測可能なURLではなく1人1トークンで表示対象を絞る考え方をまとめます。
勤務時間の通常・深夜按分は区間の重なりで計算する
勤務時間を通常時間と深夜時間へ分けるとき、条件分岐を増やさず分に正規化した区間の重なりで安定して計算する方法をまとめます。
GASのappsscript.jsonマニフェストでWebアプリ設定とOAuthスコープを固定する
GASのappsscript.jsonマニフェストで、タイムゾーン、V8ランタイム、Webアプリの公開設定、OAuthスコープを明示する考え方を整理します。
GoogleスプレッドシートからShift_JISのCSVを出力する方法
GoogleスプレッドシートからShift_JIS形式のCSVを出力する方法を、Google Apps Scriptのサンプルコード付きで解説します。業務システム向けCSVで注意したい文字コード、改行コード、出力先フォルダ、空ファイル確認も整理します。
GASで二重送信を防ぐ実装パターン:LockServiceと失敗時ロールバック
GASでスプレッドシート更新とメール送信などの外部副作用をセットで扱うときに、LockService、状態再確認、失敗時ロールバックで二重送信と不整合を防ぐ方法を解説します。
GASで2段ヘッダーの重複見出しを安全に扱う方法
GASで2段ヘッダーのスプレッドシートをDBのように扱うとき、氏名や住所などの重複見出しをグループ名と項目名のコンポジットキーで一意に扱う方法を解説します。
GAS公開Webアプリで顧客画面と管理者画面の権限を分ける方法
GASの匿名公開Webアプリに管理機能を同居させず、顧客向け画面はdoGet、管理者向け画面はスプレッドシートのカスタムメニューとHTMLダイアログに分ける構成を解説します。
GASで日付プレフィックスと日内連番の管理番号を自動採番する
Google Apps Scriptで、基準日yyyyMMddと日内連番を組み合わせた管理番号を、既存行の最大値とLockServiceで安全に採番する方法を解説します。
GASでDrive画像をthumbnail URLで表示する方法
GAS WebアプリやスプレッドシートでGoogle Drive画像を表示するとき、uc?export=viewではなくthumbnail URLを使って安定表示する方法を解説します。
GASで写真ファイル名を主キーにしてDriveを1フォルダ管理する方法
GAS Webアプリで写真をGoogle Driveへ保存するとき、管理番号などの主キーをファイル名にして1フォルダで一意管理し、撮り直し時に上書きする実装パターンを解説します。
GASで既存行から関連属性を一括反映する入力補助を作る
Google Apps ScriptのWebアプリで、過去に入力した商品名からブランド、カテゴリー、色、サイズなどの関連属性を候補表示し、一括反映する実装パターンを解説します。
GAS Webアプリの無限ローディングをonInitで止める定石
Google Apps ScriptのWebアプリでスピナーが止まらない原因を、onInitの例外、failure handler、finallyでのマスク解除に分けて解説します。
GASで外部APIが使えない時はGOOGLEFINANCEと名前付き範囲で代替する
Google Apps Scriptで外部APIが組織ポリシーにより使えない場合に、GOOGLEFINANCEセルと名前付き範囲を使って為替レートなどを取得する方法を解説します。
GAS スプレッドシートのセル画像表示3方式を比較する
GASでDrive保存済み画像をGoogleスプレッドシートのセルへ表示・リンクする3方式、CellImage、IMAGE関数、HYPERLINKの違いと選び方を解説します。
GASのdoPostをLINE WebhookとアプリAPIで分岐する
1つのGAS WebアプリURLで、LINE Webhookと既存アプリAPIから届くPOSTを本文の形で判定し、安全に処理を振り分ける実装パターンを解説します。
GASをLINE Webhookに使うときの構成上の制約
GAS WebアプリをLINE Webhookの受信先にするときに確認したい、リダイレクトによる検証失敗と署名検証の制約、代替構成を解説します。
GASログの肥大化を防ぐ:読み取り非記録と自動間引き
GASとGoogleスプレッドシートで作る業務アプリのログ肥大化を、読み取り成功の非記録と日次の自動間引きで抑える方法を解説します。
予約番号送信でLINEアカウントを連携する軽量設計
LIFFやLINEログインを使わず、利用者が予約番号をトークへ送信することで予約データとLINE userIdを紐づける軽量な連携方法を解説します。
GASでスプレッドシートIDをハードコードせず安全に取得する
GASのコードへスプレッドシートIDを直書きせず、getActiveSpreadsheetとスクリプトプロパティを使い分けて対象シートを安全に取得する方法を解説します。
GAS Webアプリのスマホ余白を抑えるHTMLテンプレート
Google Apps ScriptのWebアプリで、スマホ表示時の余白やフォント拡大を抑えるためのHTMLテンプレートと、doGetでのviewport設定の必須ポイントを紹介します。
GASでGoogleスプレッドシートを簡易DB化し外部WebアプリからCRUDする構成
Googleスプレッドシートを簡易データベースとして使い、GASをAPIサーバー化して外部Webアプリから一覧取得・登録・更新・論理削除を行う構成を解説します。
GAS Webアプリの入力途中離脱を防ぐ方法
GAS Webアプリのスマートフォン入力フォームで、再読み込みや戻る操作による入力途中の消失を防ぐため、beforeunloadと送信状態フラグを使う方法を解説します。
GAS Webアプリでスマホ写真を送信前に圧縮する方法
GAS Webアプリでスマートフォン写真をBase64送信する前に、ブラウザ側のCanvasでJPEG化・縮小・圧縮して処理を安定させる方法を解説します。
GASで作る工事現場向け写真付き報告書Webアプリ
工事現場や点検現場で使える、スマホ写真から写真付きPDF報告書を自動作成するGAS Webアプリの開発事例と構築手順を紹介します。
GASで送信ごとにGoogle Drive専用フォルダへ保存する方法
GAS Webアプリで画像やPDFを生成するとき、1回の送信ごとに専用フォルダを作り、関連ファイルをまとめて保存する実装パターンを解説します。
GASで結合セルの左上セルに安全に値を入れる方法
Googleスプレッドシート帳票の結合セルに、GASから値やIMAGE関数を安全に入れるため、結合範囲の左上セルだけへ書き込む実装パターンを解説します。
GAS帳票のセル配置をslots配列で管理する方法
写真枠や入力欄のセル番地をGAS処理内に散らばらせず、slots配列に集約して帳票テンプレート変更に強くする実装パターンを解説します。
GASでテンプレートシートを複製して複数ページPDFを作る方法
Googleスプレッドシートの帳票テンプレートをページ数分コピーし、写真付き報告書や点検票を複数ページPDFとして出力するGAS実装パターンを解説します。
GASでスマホ写真付きレポートをPDF出力する方法
GAS Webアプリでスマホ写真を受け取り、Drive保存とスプレッドシートのIMAGE関数を使って写真付き帳票PDFを安定して作る方法を解説します。
GAS CacheServiceでスプレッドシートの読み込みを高速化する方法
Google Apps ScriptのCacheServiceでスプレッドシートのデータをキャッシュし、2回目以降の読み込みを高速化する方法を解説。
GASでカード型レスポンシブレイアウトを実装する方法
GAS WebアプリでPC中央寄せ・スマホ全幅のカード型レイアウトを実装。コピペで使えるCSS付き。
GASでCSSだけのローディングスピナーを実装する方法
Google Apps Scriptで画像不要・CSSだけで回転スピナーを実装。コピペですぐ使えるコード付き。
GASでスプレッドシートの日付を安全にフォーマットする方法
GASでDate型・文字列型が混在する日付データを安全に変換する関数。コピペですぐ使えるコード付き。
GASでHTMLエスケープ関数を実装してXSS対策する方法
Google Apps ScriptのWebアプリでXSS脆弱性を防ぐHTMLエスケープ関数の実装方法。コピペで使えるコード付き。
スマホ対応フォント設定 - 全OS対応のfont-family指定【GAS・Web共通】
iOS/Android/Windows/Macすべてで美しい日本語を表示するfont-family設定。Webフォント不要で高速。
GASでスプレッドシート検索の全角・半角と大文字小文字を吸収する方法
GAS Webアプリのスプレッドシート検索で「ABC」と「abc」が別扱いになる問題を、検索前の正規化関数で解決する方法を解説します。
google.script.runのエラーハンドリング完全パターン【GAS Webアプリ】
GASのgoogle.script.runで失敗時にエラーが握りつぶされる問題を防ぐ。ボタン制御・ローディング付きの実装パターン。
GASでSPA風の画面遷移を実装して高速な画面切替を実現する方法
Google Apps ScriptのWebアプリでinnerHTMLの書き換えによるSPA風画面遷移を実装。ページ再読み込みなしで高速な画面切替を実現。
