マガジンのカバー画像

GAS練習帳

18
運営しているクリエイター

記事一覧

JavaScriptでネストされたオブジェクトをフラットにする関数

JavaScriptでネストされたオブジェクトをフラットにする関数

今日も元気にノンプロ研でGAS(Google Apps Script)勉強中です。

このnoteは、自分がわからなくなって2度調べたことなどを備忘録的に綴っています。

ネストの深いJSONデータをフラット化したいWeb APIでデータを取得などしているとネストの深いJSONデータが取得されることがしばしばあります。

マスタ項目など一度、スプレッドシートに書き出したい際に、子階層、孫階層のプロ

もっとみる
RFC3339形式の日付の取り扱いのコツ

RFC3339形式の日付の取り扱いのコツ

今日も元気にノンプロ研でGAS(Google Apps Script)勉強中です。

ノンプロ研とは、「ノンプログラマーのためのスキルアップ研究会」の略称で、ノンプログラマー(プログラミングを本職にしない人)たちが集まって、プログラミングを武器にすべくスキルを磨いているコミュニティです。

このnoteは、自分がわからなくなって2度調べたことなどを備忘録的に綴っています。

APIから返ってきたR

もっとみる
複雑階層に必要な値が入り組んだJSONデータから必要な値を抜き出して二次元配列を作りたい

複雑階層に必要な値が入り組んだJSONデータから必要な値を抜き出して二次元配列を作りたい

今日も元気にノンプロ研でGAS(Google Apps Script)勉強中です。

ノンプロ研とは、「ノンプログラマーのためのスキルアップ研究会」の略称で、ノンプログラマー(プログラミングを本職にしない人)たちが集まって、プログラミングを武器にすべくスキルを磨いているコミュニティです。

最近、freee API講座を受講してAPIでデータを取得したりできるようになりました。

今回は別のサービ

もっとみる
freee APIで下書き請求書を一気にチェックしよう!

freee APIで下書き請求書を一気にチェックしよう!

今日も元気にノンプロ研でGAS(Google Apps Script)勉強中です。

ノンプロ研とは、「ノンプログラマーのためのスキルアップ研究会」の略称で、ノンプログラマー(プログラミングを本職にしない人)たちが集まって、プログラミングを武器にすべくスキルを磨いているコミュニティです。

最近、freee API講座を受講してAPIでデータを取得したりできるようになりました。

freee会計は

もっとみる
オブジェクトから不要なプロパティを一括削除する関数が、APIのPOSTで大活躍?

オブジェクトから不要なプロパティを一括削除する関数が、APIのPOSTで大活躍?

今日も元気にノンプロ研でGAS勉強中です。

最近freee API講座を受講してAPIでデータを取得したりできるように(少し)なりました。

ただ、取得に関しては色んなサービスがcsv出力を提供しているので、やはり醍醐味としてはPOST(=データを登録)するですよね。

ここで立ちはだかるのがPOST(=データを登録)するためのデータ形式を整えるところ。具体的にはJSON形式のオブジェクトを作ら

もっとみる
選択したシートを元のシート名+日付+インデックスの名前でコピーする関数

選択したシートを元のシート名+日付+インデックスの名前でコピーする関数

ノンプロ研でGAS勉強中です。

久しぶりに作ったちょっとしたツールの投稿です。

スプレッドシートを操作していて、テンプレートのシートをコピーして、その名前を変更(例えば日付を付加)して、さらに今日のx回目みたいなサブインデックスも足してみたいな作業が私はよくあります。

まあ、キーボードで操作してもほんの数秒でできることなのですが、時間というよりも意志力が削がれるので、これはワンボタンでできる

もっとみる
取得したオブジェクトのとあるプロパティが存在する時だけループする処理

取得したオブジェクトのとあるプロパティが存在する時だけループする処理

あるサービスのAPIからデータを取得しようとしてハマったポイントです。

1. 関数AでAPIからあるレコードをオブジェクトで取得します。この時、レコードは1つしかAPIの制限で取得できません。指定したパラメータで複数レコードがある場合は、nextというプロパティが存在します。

2. 取得したオブジェクトからfunctionB(obj)で必要なデータを取り出します。

3. nextの

もっとみる
テンプレートファイルを指定したフォルダにファイル名を付けてコピーする関数

テンプレートファイルを指定したフォルダにファイル名を付けてコピーする関数

ノンプロ研でGAS勉強中です。

今日はさらっと、作った関数の備忘録メモ。

テンプレートファイルを指定したフォルダにファイル名を付けてコピーする関数です。

コピーしたいファイル、コピー先のフォルダはそれぞれidで指定しています。またコピー後に名付けたいファイル名を格納した配列を引数として渡して、ファイル名の数だけコピーしてくれます。

/*** idで指定したテンプレートファイルをidで指定し

もっとみる
全てのシートの特定の文字列を含む名前付き範囲の値を削除する関数

全てのシートの特定の文字列を含む名前付き範囲の値を削除する関数

ノンプロ研でGAS勉強中です。

今日はさらっと、作った関数の備忘録メモその2。

今回はやや取り扱い注意の「全てのシートの特定の文字列を含む名前付き範囲の値を削除する関数」です。

/*** 全てのシートの特定の文字列を含む名前付き範囲の値を削除する関数* * @param {spreadsheet} ssTgt 対象とするスプレッドシート* @param {string}

もっとみる
スコープっていつ意識するの?

スコープっていつ意識するの?

ノンプロ研でGAS勉強中です。

今日は、GAS中級講座 講義1日目の復習ブログです。学んだことを実務でいかすにはどうしたらよいのか?を軸に復習していきたいと思います。

1日目はスコープと関数について学びました。ということで前編のスコープについて。

スコープって何?まずスコープという聞き慣れない単語から。

scope
〔行動・思考・知覚・調査などの〕範囲、領域

ということで、スコープ=範囲

もっとみる
ドライブ内のタブ区切りcsvからスプレッドシートに自動転記。

ドライブ内のタブ区切りcsvからスプレッドシートに自動転記。

ノンプロ研でGAS勉強中です。
ただいま絶賛GAS中級講座を受講中です。

今回はだいぶ苦労しました。

POSレジアプリからダウンロードした複数のcsvファイル(売上レポート)をGoogle Driveの特定のフォルダに格納し、そのフォルダ内にある全てのcsvを特定のスプレッドシートに読み込み、会計ソフトにインポートできるように加工するというお仕事の効率化です。

まず、はまったのは、このcsv

もっとみる
スプレッドシートの見出し行の項目をプロパティにして各データ行をオブジェクト化

スプレッドシートの見出し行の項目をプロパティにして各データ行をオブジェクト化

ノンプロ研でGAS勉強中です。

ただいま絶賛GAS中級講座を受講中です。

今日は中級講座の宿題にとりくむなかで、いつかやらないとなと思っていた「スプレッドシートに入力されたデータのヘッダー行の項目をプロパティとして、各行のデータをオブジェクトにする関数」を作りました。

言葉だとナンノコッチャですが、以下の表を

const sheet = SpreadsheetApp.getActiveS

もっとみる
GASでクラス事始め

GASでクラス事始め

ノンプロ研でGAS勉強中です。

ただいま絶賛GAS中級講座を受講中で、今週は2回めの講義でテーマは「クラス・ライブラリ」

中級講座は、「GASの開発・保守を楽に&スマートに」がゴールで、その目標達成のためにも今回のテーマは非常に重要。

ただ、クラスってイマイチ使いどころがわからないというのが正直なところで、そんな中でちょっと取っ掛かりをもらえた気がしました。

クラスのカンドコロ?ノンプロ研

もっとみる
土・日・祝日でない最終営業日を取得するスクリプト

土・日・祝日でない最終営業日を取得するスクリプト

ノンプロ研でGAS勉強中です。

その月の最終営業日にだけする処理をGASで自動化したいという場合にトリガーの設定のために最終営業日を取得する必要があります。

最終営業日は、土・日・祝日でない月末日にもっとも近い日付として、そのDateオブジェクトを取得します。

例によって、ネットの海に素敵なコードを流している方がいて、今回はそのコピペです。

こちらの記事の lastBusinessDay

もっとみる