Google Analytics (UA) については、以前やり方について書き出していました。
また新たに下記ではなくアドオンなしの実装版を 2023年4月6日に公開しました。
ここで利用したGoogle スプレットシートに「Google Analytics」アドオン が Google Analytics 4 に非対応のため、別のアドオンを使ったやり方を紹介します。
2023年11月20日現在、下記で紹介されているように GA4 Reports Builder for Google Analytics というアドオンが Googleから出ているようです(未検証)
【GA4】GA4用のGoogleスプレッドシートアドオンが公開されました
https://www.analytics.cci.co.jp/column/post/ga4-reports-builder
https://www.analytics.cci.co.jp/column/post/ga4-reports-builder
*下記で紹介する「Google Analytics™ connector by SyncWith」は無料版の場合、35回/月の更新しかサポートされていません。20サイトを毎日1回更新した場合、月に1度しか更新できないことになります。1サイトなら1日1度で問題ないが、それ以上は https://syncwith.com/pricing にあるように Business 以上が必要だということですね。
流れは次の通り
- Google Analytics 4 からデータを取得し、Googleスプレットシートに挿入
- Googleスプレットシートにまとめページ「TOTAL Summary」シートを作成
- Googleスプレットシートに送信先「Send-Emails」シートを作成
- Google Apps Script で「TOTAL Summary」シートを、メール本文(HTML)とPDF添付で「Send-Emails」に入力したメールアドレス宛に送信
「3」「4」は Google Analytics (UA) 用のものを流用するので、ここでの説明は割愛します。
STEP 1. Google Analytics 4 からデータを取得し、Googleスプレットシートに挿入
Googleスプレットシートにアドオン「Google Analytics™ connector by SyncWith」をインストールします。
こちらは、従来の Google Analytics 3(UA)に対応しています。
詳しくは、下記のブログ先が参考になると思います。
- 拡張機能 > Google Analytics™ connector by SyncWith > Manage connections を開く
- Google Analytics 4 を選択
- Connect an account ボタンをクリックして、 Google Analytics 4 の管理をしているGoogleアカウントでログインします。
*もし複数アカウントの Google Analytics 4 からデータを取得したいなら、あとでアカウントを追加できます。 - 次の設定あたりで十分でしょう。また下記の設定をしているものとして先に進みます。
- タイトル:Googleスプレットシートの「シート名」になるので短い名前がよいです
- Select a login: Googleアカウントを選択
- Select a Google Analytics account: Google Analytics 4で設定したアカウント
- Loading properties: Google Analytics 4 のプロパティ
- 日時:下記は、Between を選択し、2022年度を指定しています。
- Dimensions: Country のみ(今回は国別アクセス数が必要なため)
- Metrics: Active users, New users, Views
New users: 新規訪問者数
Views: アクセス数
- Scheduling: Automatically refresh daily (1日に1度更新) - 入力し終わったら Insert ボタンを押すことで、「タイトル」シートが生成され、下図のような国別アクセス数が記録されます。
もし複数ページあるなら、
拡張機能 > Google Analytics™ connector by SyncWith > Manage connectionsを開いて「Browse」ボタンを押すことで、サイトを追加していくことができます。
STEP 2. Googleスプレットシートにまとめページ「TOTAL Summary」シートを作成
Total Summary シートを作成します。
シートの2行目まではメモとなります。ただしメールで送付されることになるので、ログの取得期間などの情報をいれておくと便利かと思います。
上記で重要なのは、次の4つです。
Sheet Name: Google Analytics™ connector by SyncWithで設定したタイトル(シート名)
Access Log: 関数「=SUM(INDIRECT(B5 & "!D:D"))」を入れる
*Sheet Name!D:D(Viewsの欄)の合計値となります。
Visitors: 関数「=SUM(INDIRECT(B5 & "!C:C"))」を入れる
*Sheet Name!C:C(Viewsの欄)の合計値となります。
Countries: 関数「=COUNTIF(INDIRECT(B5 & "!A:A"), ">=A")」をいれる
*Sheet Name!A:A(Countryの欄)が空欄でない場合
*COUNTA や COUNTIFの "<>" 条件の場合、空欄にみえてデータが入っているのかうまくいきません。そのため、C言語でよくやる文字の数値での比較「C言語における文字(文字変数char)・文字列の表現(ASCIIコード表つき)」が使えるんじゃないかーと思ってやってみたら上手く言った程度です。ここは改良の余地ありですね。
*COUNTA や COUNTIFの "<>" 条件の場合、空欄にみえてデータが入っているのかうまくいきません。そのため、C言語でよくやる文字の数値での比較「C言語における文字(文字変数char)・文字列の表現(ASCIIコード表つき)」が使えるんじゃないかーと思ってやってみたら上手く言った程度です。ここは改良の余地ありですね。
TOP 10 of Countries: 関数「=INDIRECT(B5 & "!A3:A13")」を入れる
実際には11ヵ国にしてます。Japan がトップになることも多くて、日本以外の TOP 10が知りたいなと思ったためです。このあたりは、A3:A13をA3:A12に変えたりいろいろ調整してください。
実際には11ヵ国にしてます。Japan がトップになることも多くて、日本以外の TOP 10が知りたいなと思ったためです。このあたりは、A3:A13をA3:A12に変えたりいろいろ調整してください。
ここまで出来たら下記の、
(後半)一括取得した Googleスプレットシートの特定シートデータをメール本文(HTML)と PDF にして添付したメール送信
を参考にしてください。
0 件のコメント:
コメントを投稿