記事一覧
GASでPDFを操作するあれこれ
GASでPDF生成は昔から利用されてきた鉄板のテクニックですが、V8エンジン搭載後はさらに色々なことが出来るようになりました。それらPDF生成や操作を色々まとめてみました。
ここに掲載されてるもの以外でもまだまだ色々出来るので、自分のアプリに装備していきたい機能です。
普通にPDFを生成する方法GASからは通常使えなかったスプレッドシートの機能としてのPDFエクスポートをUrlfetchApp
GASとGoogle ChatとchatGPTと
Google Chat用のチャットボットを以前作ってあったのですが、つい最近リリースされた人工テキストAIである「chatGPT API」を組み込んで、Google Chatで問い合わせのできるチャットボットを作ってみました。
事前準備APIキーを手に入れる
こちらのページにアクセスして、APIキーが取得出来る。$18分の無償枠が利用可能。開発するリファレンスはこちら
1単語のリクエスト1回
GASで連絡先を操作する - 最新版
ContactsAppの廃止2022年1月、Google Apps Scriptで連絡先を操作するContactsAppが廃止されてしまいました。その結果として、GASから簡単に連絡先ことGoogle Contactsを操作することが出来なくなってしまいました。
代わりにREST APIとして利用できていた「People API」がGASのAdvanced Serviceにあるのでこれを利用して
GASでSVGを使った座席管理アプリを作る
使いドコロと使う理由使い所
SVGで自由自在にレイアウトを構築することが出来、単純なHTMLとCSSよりも直感的にアプリケーションを使って構築が可能です。このSVG画像を使うことで
フリーアドレス対応の座席管理アプリの構築
様々な予約管理システムの構築
センサーデータと連携して、作物の監視状況の可視化
グラフィカルなサイトマップの作成
などなど応用が可能です。通常の画像とライブラリで作
VBA・マクロが既定でブロックされました
2022年4月にMicrosoft OfficeのVBAおよびマクロの実行に関して、2013〜のバージョン全てに対して、既定でブロックするアプデが配信されています。結果、これまで社内で普通に利用できていたVBAとマクロが、突如として動作しなくなります。
ことの発端は、Emotetが流行しいよいよMicrosoftも現状の改善に踏み出した結果なのですが、かといって完全動作しないでは困ります。実際今
PowerAppsでタイムレコーダを作る
概要Microsoft365にあるPowerAppsは、ノーコードでExcelなどを土台にアプリを作ることが可能です。今回のようなアプリを社内で作る事によって、余計な外部ウェブサービスに1名当たり何百円も支出を永遠に固定費として出す必要はなくなるので、非常に利点があります。
タイムレコーダを今回は作ってみました。ちなみに今、無償でできる Power Apps 特別版が配布されています。
作って
Google Apps ScriptでClass構文を使う
概要V8ランタイムが使えるようになってから、Google Apps Scriptでそれまで利用できなかったClass構文が使えるようになりました。単純な関数だけで構築していたコードを、オブジェクト指向な感じでGASを書けるようになったので、コードの再利用性や冗長な処理をより簡便な書き方で作ることが可能です
マイクロサービスな用途の多いGASですが、規模の大きなアプリを構築する場合には、Class
Power Queryで2つのシートの差分を抽出
Power Queryを使いましょう概要
Power Queryにてノーコードで2つのシートを比較して、異なってるセルの値をリストの形式で抽出するテクニックです。一度作ってしまえば、後は2つのシートの中身を入れ替えて、右クリック⇒更新するだけで作業が完了するので、RPAを用いずに業務の自動化を実現可能です。
Power Query1つ出来る出来ないで大きな差になり、事務職の人にとって大きな武器
PlaywrightでFirefoxを自動化するテクニック
PlaywrightについてPuppeteerと互換性がありつつも、独自の発展もしているブラウザを自動操縦する為のライブラリがこのPlaywright。
PuppeteerがChromeをターゲットにしてるのに対して、こちらはFirefoxやSafariも操作する事が可能
ただ、完全互換ではなく方向性の違い故にメソッドやテクニックが異なるものがあるので、注意が必要。
SeleniumやPowe
Google Apps ScriptでGA4のデータを取得する
Google Analyticsのデータを取得する概要
Google Analyticsが2023年7月に大きく変更されて、現在のAnalyticsが廃止されます。現時点ではまだ取れる指標がショボいので、大丈夫かな・・・と心配になりますが、このデータをGASで取得してみます。
簡単なやり方
以下のような手順になります
GA4のプロパティIDを取得しておく
スクリプトエディタにサービスとし
Arrayformula関数でAND・ORを使う
問題点Googleスプレッドシートの配列関数であるArrayformula関数
A2:AといったようなA2以下全部みたいな、範囲が固定化されていない指定方法と条件判定を組み合わせるとオカシナ挙動になります(固定化されていれば、以下の数式でも問題なく計算されます)。
例えば以下のような場合、想定した計算がされない上に、0が下の方にずーっと並びます
=arrayformula(if(or(A3: