Outlook のデータにMS Access のリンクテーブルから接続!更新まで実現する方法

加藤龍彦
加藤龍彦
デジタルマーケティング
MS AccessからCData ODBCドライバでOutlookデータへの接続・読み取り・更新をコーディングなしで簡単に実現。レポーティング業務を効率化。



Microsoft Access はMicrosoft の提供するデータベースソフトであり、Excel ライクな操作で手軽にデータベースを扱えます。CData ODBC ドライバと組み合わせることで、Access からOutlook を含む270を超えるSaaS / DB と連携することができます。本記事では、CData ODBC Driver for API を使って、Microsoft Access でOutlook を取得および更新する方法をご紹介します。

CData ODBC ドライバとは?

300種類以上の業務システムやDB をお好みのツールとノーコード連携

CData ODBC ドライバは、以下のような特徴を持つデータ連携ツールです。

Outlook をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの300種類以上のSaaS / オンプレデータソースに対応
Access をはじめとする多様な帳票・BI ツールにOutlook のデータを連携
ノーコードでの手軽な接続設定
標準SQL での柔軟なデータ読み込み・書き込み
ベーシック認証 / OAuth 2.0 / SAML など多様な認証方式に対応
このチュートリアルではCData ODBC Drivers を使用してkintone とのデータ連携をノーコードで設定します

CData ODBC ドライバでは、1.データソースとしてOutlook の接続を設定、2.Access 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

Outlook との接続を作成

まずは、本記事右側のサイドバーからAPI ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

ODBC ドライバーのインストール完了時にODBC DSN 設定画面が立ち上がります。または、Microsoft ODBC データソースアドミニストレーターを使ってDSN を作成および設定できます。

OAuth 認証の設定

Microsoft Graph API は認証に OAuth 2.0 を使用します。OAuth 認証情報(Client ID と Client Secret)を取得するには、Microsoft Azure Portal でアプリケーションを登録する必要があります。

OAuth 認証情報の取得

  1. Azure Portal にログインします。
  2. Azure Active Directory > App registrations に移動します。
  3. New registration をクリックして新しいアプリケーションを作成します。
  4. アプリケーション名を入力し、適切なアカウントの種類を選択します。
  5. Redirect URI をアプリケーションのコールバック URL に設定します(デスクトップアプリの場合は http://localhost:33333 など)。
  6. Register をクリックしてアプリケーションを作成します。
  7. アプリケーションの概要ページで Application (client) ID をコピーします。これが OAuthClientId になります。
  8. Certificates & secrets に移動して、新しいクライアントシークレットを作成します。
  9. クライアントシークレットの値をコピーします。これが OAuthClientSecret になります。
  10. API permissions に移動して、必要な Microsoft Graph API の権限を追加します:
    • Mail.Read - メールメッセージへのアクセス用
    • Contacts.Read - 連絡先へのアクセス用
    • Calendars.Read - カレンダーイベントへのアクセス用
    • Tasks.Read - To Do タスクへのアクセス用
    • offline_access - リフレッシュトークンの取得用
  11. Grant admin consent をクリックして、これらの権限を付与します。

OAuth での接続

以下の接続プロパティを設定して接続を確立してください:

  • AuthScheme:OAuth に設定します。
  • InitiateOAuthGETANDREFRESH に設定します。CData API Profile for Outlook が OAuth プロセスを自動的に進め、アクセストークンを取得します。
  • OAuthClientId:Azure Portal の Application (client) ID に設定します。
  • OAuthClientSecret:Azure Portal のクライアントシークレットの値に設定します。
  • TenantId:Azure AD のテナント識別子(GUID または 'contoso.onmicrosoft.com' のようなドメイン名)に設定します。
  • CallbackURL:アプリ登録で指定したリダイレクト URI に設定します(デスクトップアプリの場合は http://localhost:33333 など)。

接続文字列の例

Profile=C:\profiles\Outlook.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;TenantId=your_tenant_id;CallbackUrl=http://localhost:33333;

ODBC データソースアドミニストレーターで必要なプロパティを設定する方法の詳細は、ヘルプドキュメントの「はじめに」を参照してください。

CalendarGroupCalendars データのリンクテーブルを作成

次の手順を実行することで、Access からリンクテーブルを作成してリアルタイムでOutlook のCalendarGroupCalendars データにアクセスできます。

  1. Access の「外部データ」タブで「新しいデータソース」->「他のソースから」->「ODBC データベース」をクリックします。
  2. ODBC データベースの接続画面を表示
  3. データの保存方法オプションで、インポートかリンクテーブルかを選択します。リンクテーブルを利用することで、CalendarGroupCalendars テーブルを読み込むだけではなく、リアルタイムでの書き込みも可能になります。
  4. ODBC 接続ウィザードでリンクテーブルを選択
  5. 「コンピュータデータソース」タブで、先ほど設定した「CData API Source」を選択します。
  6. コンピュータデータソースタブで、設定したデータソースを選択
  7. CalendarGroupCalendars テーブルを選択します。このテーブルについての詳細は、ヘルプドキュメントの「データモデル」を参照してください。
  8. 利用可能なテーブル一覧。

リンクテーブルをダブルクリックで編集

これでOutlook のデータへのリンクテーブルが作成できたので、自由にテーブル内のデータを読み込み・書き込みできます。リンクテーブルは常に最新のデータを持ち、すべての変更は元となるテーブルに反映されます。

リアルタイムデータのリンクテーブル。

おわりに

このようにCData ODBC ドライバと併用することで、270を超えるSaaS、NoSQL データをAccess からコーディングなしで扱うことができます。30日の無償評価版が利用できますので、ぜひ自社で使っているクラウドサービスやNoSQL と合わせて活用してみてください。

日本のユーザー向けにCData ODBC ドライバは、UI の日本語化、ドキュメントの日本語化、日本語でのテクニカルサポートを提供しています。

はじめる準備はできましたか?

API Driver で Outlook のライブデータに接続

Outlook に接続