2014-10-23

ExcelのVBAマクロにてGoogle Analyticsの訪問数・PV数を日ごと集計①

注意


本記事内で利用しているGoogleクライアントログイン(ClientLogin)による認証方式および、Google Analytics API v2.2は現在利用できません
以下に新しい認証方式であるOAuth2.0および、Google Analytics API v3を利用したアクセス方法をまとめていますので、こちらをご覧ください。




関連記事



Google Analytics APIを利用すると様々なカスタムビューをXMLデータとして取得することが可能ですが、分析するにあたって行きつくところExcel等に取り込んで加工なりすることになると思います。

この「取り込んで」というのが、毎日の定常作業である場合、非常に面倒であるため、Excel自身に取得させて直接表示しようというのが今回のミッションです。


やり方は2とおり


大きくやり方は次の2とおりあります。
  • IE(Internet Explorer)をVBAマクロから操作して取得する
  • HTML DOMオブジェクト操作にて取得する
今回は、IEを操作して取得する方法を記載します。


計測開始日、計測終了日を引数指定してその間のセッション数・PV数を取得する


※アクセス先URLのhttps://www.google.com/analytics/web/?hl=ja&pli=1#report/visitors-overview/a99999999w99999999p99999999/ について、99999999の部分は計測したいGoogleAnalyticsレポートのトップページURLによって修正してください。

使い方

sDateとeDateの2つの引数にDate型で日付を指定してgetPvSession_Autoを呼び出します。
毎日自動実行させるなら実行当日の日付を指定するのがよいでしょう。
実際にこれで取得した日次の訪問数(セッション数)とページビュー数がそれぞれ、lSessとlPVという2つの変数に数値として設定されます。
今回はその変数をどう利用するかはあえて記載していません。
縦軸を日付とした集計シートにセットするAutoマクロとして実装する等よしなに利用すればよいと思いますので。

IE操作型マクロの利点

1つはマクロ実行をするとIEオブジェクトのVisible(可視)をTrueにして実行するので、実行進捗が目で見てわかるということ。
それにより、何かしら不具合(Google Analytics画面のリニューアルがされたときに動かなくなった場合等)をすぐ視認できるということ。
たまに表示されるGoogleアカウント認証(ログイン画面)を手打ちすることでマクロを止めずに続行することができること。
逆に欠点は、 HTML DOMタイプよりも低速であること。
たまにGoogleアカウント認証画面をはさんでしまうことで、完全自動化には向いていないこと。

となります。

次回記事