Microsoft Access からGoogle スプレッドシートのデータをリンクテーブルで参照・更新する方法を説明します。ODBC Driver を使えばノーコードでリンクテーブル利用が可能なので大変便利です。Google Apps Script などは不要です。
Access で複数のデータソースからのデータを管理している方、従来Excel のデータをAccess で管理・加工されていた方、Access で帳票印刷などのアプリを作成し、データソースがGoogle スプレッドシートだった方などにお勧めです。
CData ODBC Driver for Google Sheets のセットアップ
ODBC Driver をインストール
ウェブサイトからドライバーをダウンロードします。30日の無償トライアルが使えます。
ダウンロードした.exe ファイルを開いてインストールを行います。オンラインアクティベーションがあるので、オンライン環境でインストールを行ってください。
Google スプレッドシートとの接続を確立
インストール後にDSN 構成画面が開きます。CData ODBC Driver for Google Sheets では、OAuth 認証が組み込まれているので、DSN 構成画面のプロパティは何も設定せずに(カスタム設定を希望される方以外は)、「接続のテスト」ボタンをクリックすることでブラウザ認証でGoogle スプレッドシートに接続が可能です。
クリックするとブラウザ認証が立ち上がります。スプレッドシートを使っているアカウントを選んでログインします。
アクセス権限の確認画面がでますので、「許可」します。
これでCData ODBC Driver によるGoogle スプレッドシートへのOAuth アクセスが完了しました。ODBC のDSN 設定画面に戻り、「OK」を押して接続を確立してください。
Microsoft Access からGoogle スプレッドシートにリンクテーブル接続
次にMicrosoft Access からの実際にGoogle スプレッドシートデータにリンクテーブルとしてアクセスします。
今回は以下のようなスプレッドシートを使います。
Microsoft Access を開き「外部データ」→「新しいデータソース」→「他のデータソース」→「ODBC データベース」とクリックします。
データをインポートかリンクテーブルとして利用するかのダイアログがありますので、ご利用に合わせて選択します。今回は更新も行う「リンクテーブルを作成してソースデータにリンクする」を選択します。
データソース選択画面が開くので、例として先ほどDSN 作成を行ったCData GoogleSheets Sys のDSN を選択します。
アカウントで使用できる。Google スプレッドシートのリストが表示されるので今回利用するシートを選択します。これでOKを押して設定完了です。
このようにGoogle スプレッドシートのデータがリンクテーブルとして利用できるようになりました。これでスプレッドシート側への更新も行うことができます。