電子メールで収集したデータを Access データベースに追加する

Microsoft Access 2010 と Microsoft Outlook 2010 を併用すると、電子メールで情報を収集または更新できます。Access で表示される手順に従ってデータ収集フォームを作成し、それを電子メール メッセージで送信できます。電子メールの受信者から記入済みのフォームが返されたときに、収集したデータを自動処理し、指定の Access データベースに格納するように設定可能です。この方法でデータを収集すると、コピーしてペーストしたり、データを手動で入力したりするのに必要な時間と手間を省くことができます。次に示すのは、データ収集にこのプロセスを使用できるシナリオです。

アンケート   : アンケートの操作しその結果を最初に、結果を格納するために必要なテーブルで Access データベースを作成して、ウィザードを使用して、アンケート フォームを作成してアンケートの参加者に、メールにします。参加者の返信に、データベースに、アンケート データが自動的に保存されます。

進捗レポート   : チームが定期的に現在の情報が含まれるメッセージの電子メールを送信することを知らせるを維持できますが最新の在庫レベル状態か保留中の問題に関する最新の情報であるかどうか。

イベントの管理   : 会議、トレーニング、またはその他のイベントを整理するときに、いずれかを送信できますまたは他のフォームとして電子メール メッセージの連絡先情報、出張費、宿泊環境設定を収集するためにしたりします。返信が自動的に処理する場合は、参加者はせずに通知するには、いつでもユーザー設定を変更するのし、常に最新のデータへのアクセスを決定するがあります。

この記事では、このプロセスを使用するために必要な準備と、ウィザードを使用してデータ収集を始める方法について説明します。さらに、ウィザードの手順を適切に進められるように、各手順に関する追加情報も提供します。

注: 受信者がデータ収集フォームを送信する Hotmail や yahoo のいずれかを使用する場合に収集したデータを追加することはできません。

準備

電子メール メッセージを使ったデータ収集を初めて行う場合は、次の手順に従ってください。

  1. 次のアプリケーションがコンピューターにインストールされていることを確認します。

    • Access 2007 または Access 2010。

    • Outlook 2007 または Outlook 2010。電子メール メッセージの送信に使用するコンピューターに Outlook がインストールされ、構成されている必要があります。Outlook がインストール済みであっても構成されていない場合は、Outlook を起動し、Outlook スタートアップ ウィザードの指示に従って設定します。Outlook スタートアップ ウィザードの詳細については、Outlook のヘルプを参照してください。

    • InfoPath フォームを使用する予定の場合は、InfoPath 2007 以降がインストールされていることを確認します。受信者のコンピューターにも InfoPath がインストールされている必要があります。

    • 電子メールの受信者がフォームを表示および編集するには、InfoPath か、HTML 形式をサポートする電子メール クライアントが各自のコンピューターにインストールされている必要があります。

      電子メール メッセージを使ってデータを収集するためのフォームは、Access フォームではありません。InfoPath または HTML 形式で特別な形式が生成されます。

      格納先のデータベースを選択します。データベースの形式には .mdb と .accdb のいずれかを使用できます。また .mde ファイルおよび .accde ファイルもサポートされます。既存のデータベースを使用しない場合は、新しいデータベースを作成する必要があります。

  2. 特定するか、または電子メール応答からのデータが入力された状態を作成します。データを収集している場合 既存のテーブルは、テーブルがない読み取り専用とその内容を更新または追加するために必要な権限があることを確認します。

注: 添付ファイル、オート ナンバー型、OLE、および複数値フィールドの種類は、電子メール メッセージを使用して収集ことはできません。

データ コレクションの操作では、次の 2 つ以上のテーブルを読み込む場合、は、選択クエリを作成し、フォームのレコード ソースとして使用する必要があります。クエリにすべての基になるテーブルから必要なフィールドが含まれていることを確認します。既存のクエリを使用している場合、クエリが読み取り専用ではできませんが、その内容を更新または追加するために必要な権限があることを確認します。2 つ以上のテーブルに基づくクエリの作成の詳細については、「クエリの概要」を参照してください。

次の場合は、データを新しいレコードとして格納してください。

  • データを複数のテーブルに格納する場合。

  • 格納先のテーブルに主キー フィールドがない場合。主キー フィールドの値は、各返信と既存のレコードとをマッピングするために必要な値です。格納先のテーブルに主キー フィールドがない場合は、直ちに主キー フィールドを作成するか、固有の主キーの値を持つ既存のフィールドを割り当てます。

  • 格納先のテーブルにレコードがない場合。テーブルが空の場合は、ウィザードによってレコードの追加が求められます。

  • 受信者の電子メール アドレスがデータベースのフィールドとして格納されない場合。収集したデータでレコードを更新する場合、ウィザードのダイアログではアドレスを手動入力できません。アドレス フィールドは、格納先のテーブルまたは格納先のテーブルとリレーションを持つテーブルにある必要があります。

ページの先頭へ

はじめに

  1. 収集したデータを格納するデータベースを開きます。

  2. 1 つのテーブルにデータを追加するには、ナビゲーション ウィンドウでそのテーブルを選択します。複数のリレーション テーブルにデータを格納するには、それらのテーブルにバインドされているクエリを選択します。

  3. 次のいずれかの手順を実行して、ウィザードを起動します。

    • [外部データ] タブの [データの収集] で [電子メールの作成] をクリックします。

    • テーブルまたはクエリを右クリックし、[電子メールによるデータの収集と更新] をクリックします。

      注: テーブルは、すべてのフィールドが含まれていないまたはオート ナンバー型、OLE オブジェクト、添付ファイル、または複数値を持つルックアップ フィールドの種類には、次のメッセージが表示されます。選択したテーブルまたはクエリに電子メールによるデータ収集をサポートするフィールドがありません

テーブルにデータの収集をサポートするフィールドが含まれている場合、ウィザードを開始します。追加先テーブルでは、追加して、データの更新をサポートする場合、ウィザードで電子メール メッセージを使ってデータを収集する必要な手順を実行できます。

質問が、プロセスの次の 7 つの主要な手順に従って必要があるの参照として次のセクションを使用します。

  1. 送信するデータ入力フォームの種類を選択します。

  2. 新しいデータを収集する、既存のデータを更新するかどうかを選択します。

  3. データを収集します。

  4. 自動または手動によるデータ処理を指定します。

  5. 受信者の電子メール アドレスを指定する方法を選択します。

  6. 確認し、[宛先のリストを指定します。

  7. 作成して電子メール メッセージを送信します。

ページの先頭へ

送信するデータ入力フォームの種類を選択します。

送信者と受信者にとっての使い勝手を考えたうえでフォームの種類を選択します。

選択の HTML フォーム   HTML フォームを表示および HTML をサポートする電子メール クライアントのすべてのユーザーを編集できます。

選択の Microsoft InfoPath フォーム   場合 InfoPath のみがお使いのコンピューターにインストールされているこのオプションが表示されます。InfoPath しているすべての受信者が自分のコンピューターに Outlook がインストールされている場合にのみ、このオプションを選択します。InfoPath フォームには、データを入力および編集環境では、します。

次に表示されるページは、オブジェクトがデータの更新をサポートするかどうかによって異なります。オブジェクトが、複数のテーブルに基づいたクエリであるか、主キー フィールドを持たないテーブルであるか、またはレコードを 1 つも含まないテーブルである場合、新規レコードが追加されると見なされ、フォーム フィールドを選択するように求めるメッセージが表示されます。それ以外の場合は、フォーム フィールドの選択を求められる前に、データの追加および更新を行うかどうかを確認するメッセージが表示されます。

ページの先頭へ

新しいデータを収集するか、既存のデータを更新するかを選択する

データを使って何を行うかを指定します。使用するフォームの種類によって、受信者が返信 1 通につき送信可能な新規レコードの数が決まります。データを更新する場合は、受信者に更新を求めるレコードの数によって、メッセージに含まれる入力済みのフォームの数が決まります。

注: 新しいレコードを追加するには、メッセージを作成したときに電子メール メッセージのアドレス] ボックスに電子メール アドレスを入力します。既存のデータを更新するには、基になるテーブルまたはクエリ、または関連テーブル内のフィールドと受信者の電子メール アドレスを格納する必要があります。

ページの先頭へ

収集するデータを指定する

フォームに含めるフィールドを選択する際、基になるテーブルまたはクエリに存在するすべてのフィールドをフォームに含める必要はありません。ただし、次の条件を満たす必要があります。

  • 必須フィールド:   、アスタリスク (*) 記号の付いたフィールドは、必要なフィールドです。新しいレコードを収集している場合、ウィザードが自動的にすべてのフィールドが必要なプロパティが[はい]に設定を追加します。すべてのレコードは、フィールドが空白の必須入力をテーブルにレコードを追加するアクセスが失敗します。

  • フィールドの種類がサポートされていない:   オート ナンバー型、添付ファイル、OLE オブジェクト、または複数値を持つルックアップ フィールドなど、フォームに特定のフィールドの種類を含めることはできません。

  • 主キー フィールド:   ただし、レコードを追加するときに、フィールドの値を入力できるユーザー指定した値が既に使用されている場合、その返信は処理されません。

    注: [フィールド プロパティ] で、含める各フィールドのラベルを指定し、をクリックして読み取り専用フィールドのデータを変更するのには、ユーザーがたくない場合。

ページの先頭へ

自動データ処理または手動データ処理を指定する

返信を自動処理するか、手動処理するかを選択できます。自動処理を選んだ場合、返信を受け取ると、Outlook と Access が連動してデータベースの格納先テーブルにデータがエクスポートされます。自動処理により、時間と手間を省くことができます。手動処理を選んだ場合は、自分でエクスポート操作を行って、指定した Outlook のフォルダーから Access の格納先テーブルにデータを転送する必要があります。

返信がメールボックスに届いた時点で次の条件が満たされている場合にのみ、返信が格納先テーブルに正常にエクスポートされます。

  • コンピューターで Outlook が実行中である。Outlook を実行していないと、次に Outlook を起動するまで処理は開始されません。

  • Access がパスワード保護されておらず、排他モードで開かれていない。データベースの名前や場所が、電子メール メッセージを送信したときから変更されていない。

  • テーブルとクエリの名前、およびフォームに含まれるフィールドのプロパティが、電子メール メッセージを送信したときから変更されていない。

  • 基になるテーブルとクエリに対して、追加または更新を行う権限を持っている。

    注: 自動処理に失敗した場合は、問題を修正してから、エクスポートできなかった返信を手動でエクスポートします。問題を修正した後に受信ボックスに届いた返信については、引き続き自動処理が行われます。

返信の自動処理を制御するプロパティを設定する

返信の格納先として別の Outlook フォルダーを指定するには、ウィザードの [返信の処理方法を指定します。] ページでフォルダー名をクリックします。[フォルダーの選択] ダイアログ ボックスで、別のフォルダーを選択するか、[新規作成] をクリックして新しいフォルダーを作成します。

[返信の自動処理を制御するプロパティを設定する] をクリックしてインポート設定を変更または微調整する場合は、次の表を参照して選択可能なオプションの情報を確認してください。

オプション

結果

メッセージを送信した相手に対して返信を破棄   

このチェック ボックスは、本来の受信者によって送信された返信だけを自動処理したい場合にオンにします。それ以外のユーザーからの返信も格納先フォルダーに格納されますが、自動処理されることはありません。

各受信者から複数の返信を承諾します。   

各受信者からの返信のうち 1 通目のみを自動処理するには、このチェック ボックスをオンにします。2 通目以降の返信も格納先フォルダーに格納されますが、自動処理されることはありません。

注: この設定は、返信に含まれるレコードの数ではなく、処理対象の返信自体の数のみを制御します。つまり、InfoPath フォームを送信した場合、ユーザーは 1 通の返信に複数のレコードを含めることができ、この返信内のすべてのレコードは Access によって自動処理されます。このチェック ボックスがオフになっている場合も同じです。

既存のデータの更新プログラムのみを許可します。   

受信者が InfoPath フォームを使用してデータを更新する場合、既存レコードへの更新だけでなく、新規レコードも送信することができます。既存レコードへの更新のみを処理する場合には、このチェック ボックスをオンにします。

処理への返信の数   

自動処理対象とする、全受信者からの返信の総数を入力します。すべての返信を自動処理するには、大きな値 (5000 など) をテキストボックスに入力します。返信の総数がここで指定した数を超えた場合、超過分の返信も格納先フォルダーに格納されますが、自動処理されることはありません。

日付と時刻を停止するには   

電子メール メッセージに対する返信の自動処理を終了するタイミングを指定します。この期限を過ぎて届いた返信も格納先フォルダーに格納されますが、自動処理されることはありません。

これらのオプションを後から変更するには、[外部データ] タブの [データの収集] で [返信の管理] をクリックします。[データ収集メッセージの管理] ダイアログ ボックスで、設定を変更するメッセージを選択し、[メッセージのオプション] をクリックします。このダイアログ ボックスで変更した内容は、これ以降に届くこのデータ収集メッセージに対するすべての返信において有効になります。

返信の手動処理

どの返信をいつ処理するかを管理する場合は、自動処理オプションを選択しないでください。フォルダーで各返信を選択して右クリックし、ショートカット メニューの [Microsoft Access にデータをエクスポート] をクリックするまで、返信は指定した Outlook のフォルダーに格納されます。

場合によっては、自動処理に失敗した返信を手動で処理しなければならないこともあります。

データをエクスポートする前に確認すべき点

  • Access データベースが排他モードで開かれておらず、データベースの名前または場所が、電子メール メッセージを送信したときから変更されていない。

  • テーブルとクエリの名前、およびフォームに含まれるフィールドのプロパティが、電子メール メッセージを送信したときから変更されていない。

  • 基になるテーブルとクエリに対して、追加または更新を行う権限を持っている。

ページの先頭へ

受信者の電子メール アドレスを指定する方法を選択する

新しい情報のみを収集する場合、電子メール アドレスを指定するには次の 2 とおりの方法があります。

  • Outlook の電子メール メッセージに個別に電子メール アドレスを入力するか、アドレス帳からアドレスを選択する。

  • 現在の Access データベースのテーブルまたはクエリの電子メール アドレス フィールドを使用する。

    注: 既存レコードの更新目的でデータを収集する場合には、このダイアログ ボックスは表示されません。受信者の電子メール アドレスは、最初にデータベース内にフィールドとして表示されるためです。

Outlook で電子メール アドレスを直接入力する

Outlook で受信者を指定する場合は、メッセージを送信する前にプレビューおよびカスタマイズできます。電子メール メッセージの本文には、簡単な説明とフォームを含めてください。フォームは変更しないことをお勧めします。フォームの構造を変更すると、返信が処理されなくなる可能性があります。

データベースのフィールドに格納されている電子メール アドレスを使用する

[関連付けられたテーブルを選択するオプションは、関連するテーブルを指します。[データベース ツール。 ] タブの [リレーションシップ] グループで、データベースのテーブル間のリレーションシップを表示または [リレーションシップ] をクリックします

リレーションシップについての詳細については、テーブルのリレーションシップの概要」を参照してください。

ページの先頭へ

宛先のリストを確認および指定する

最後の主要な手順は、電子メール メッセージのプレビューとカスタマイズ、受信者リストの微調整、データ収集メッセージの送信などです。

電子メール メッセージを作成して送信する

電子メール メッセージを作成できるようになったという内容のメッセージがウィザードに表示され、[返信の管理] コマンドを使用して電子メールの状態を確認する手順が表示されたときに、いくつかの警告メッセージが表示される場合があります。次の表に、各警告とその対処方法を示します。

警告が表示されます。 メッセージ

説明

S ソリューション

いくつかのレコードで、指定された電子メール アドレス フィールドに有効なアドレスが含まれていません。これらの行にはデータは返されません。

選択した電子メール アドレス フィールドに、無効な値が含まれています。

すべてのレコードについてデータを収集するには、ウィザードを終了し、無効な値を正しい電子メール アドレスに置き換えます。その後、もう一度ウィザードを起動してください。

注意: 現在、データベースを排他ロック状態で開いています。この排他ロックを開放しないと、電子メール メッセージが自動的に処理されません。

データベースが現在排他モードで開かれています。

Access では、排他ロックされているデータベースに対してはデータの追加も更新も行うことができないため、返信を自動処理するように設定すると処理に失敗します。メッセージを送信したらすぐにデータベースを閉じ、共有モードで再度開いてください。

注意: これらの電子メール メッセージには、機密データが含まれている可能性があります。

データ収集により既存レコードを更新しようとしてしますが、送信するフォームには既存のデータがあらかじめ入力されます。

機密データを含むフィールドがある場合、ウィザードのフィールド選択画面に戻り、機密データを含むフィールドをフォームから削除します。

メッセージのプレビューとカスタマイズが完了したら、電子メール アドレス フィールドにフィルターを適用し、受信者を選択できます。対応するチェック ボックスをオンにして、使用する電子メール アドレスを選択します。無効な電子メール アドレスを示すダイアログ ボックスが表示された場合は、表示されたアドレスをメモして [終了] をクリックします。無効なアドレスを確認し、必要な修正を加えてから、もう一度メッセージを送信してみます。

ページの先頭へ

注記: 

  • 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

  • この記事の英語版を参照するには、ここ をクリックしてください。Microsoft コミュニティの他のメンバーと一緒に、Community Translation Framework (CTF) を使ったこの記事の改善にご協力ください。記事内の文章にマウス ポインターを合わせて、CTF ウィジェットの [翻訳を改善します] をクリックしてください。CTF の詳細については、ここ をクリックしてください。CTF を使用すると弊社の サービス利用規約 に同意したことになります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×