Microsoft Office InfoPath では、データの入力と収集のためのフォームテンプレートを作成できます。 Microsoft Office Excel 2007 を使うと、ユーザーはデータの計算、グラフ化、分析を行うことができます。 これらのプログラムと XML を両方とも使用することで、簡単かつ効果的なコードのないビジネスソリューションを簡単に作成できます。これにより、社内の資産を追跡することができます。
この記事の内容
アセットトラッカーソリューションの作成の概要
InfoPath と Excel の間で XML データを交換することができます。 Infopath のエクスポートコマンドは、Excel にフォームデータを送信する簡単で簡単な方法ですが、より柔軟性の高い方法として、さまざまな方法があります。 Excel で InfoPath XML スキーマファイル (.xsd) を明示的にマッピングしてから InfoPath フォームファイル (.xml) を Excel にインポートすることにより、データのレイアウトをカスタマイズし、Excel の機能をより効果的に活用して、データの管理や分析をより効率的に行うことができます。
この記事では、infopath アセットトラッカーのサンプルフォームテンプレートを使って、InfoPath、XML、および Excel を連携させる方法を説明します。 組織が各従業員の office の資産をインベントリしているとします。 次に、翌年の機器予算を割り当てる方法を決定するために、Excel レポートが実行されます。 次の図は、部門の資産データを収集、追跡、および報告する方法の概要です。
1. アセットトラッカーフォームテンプレートが作成されます。
2. スキーマファイルが Excel テーブルにマッピングされ、テーブルレイアウトがカスタマイズされている。
3. 空のピボットテーブルとピボットグラフのサマリーレポートが作成されます。
4. 資産管理フォームを使用して、ユーザーからデータを収集します。
5. すべてのフォームデータが Excel テーブルにエクスポートされ、ピボットテーブルとピボットグラフレポートが更新されます。
このソリューションには、次のユーザーロールと製品が含まれます。
= 必須 = 必須ではありません
ソフトウェア要件 |
|||
役割 |
Office InfoPath 2007 |
Office Outlook 2007 |
Office Excel 2007 |
ソリューションデザイナー |
|
|
|
意思決定者 |
|
|
|
Employees |
|
|
|
手順 1: アセットトラッカーフォームテンプレートをカスタマイズする
InfoPath に含まれている資産管理フォームテンプレートを使用すると、従業員のオフィス、従業員が所属している部門、資産のカテゴリ、各資産の詳細などの各資産に関する情報を収集することができます。 このソリューションでは、フォームデザイナーは Office Outlook 2007を使用して、フォームテンプレートを意思決定者の電子メールアカウントに送信します。
作業 1: アセットトラッカーフォームテンプレートを開いてカスタマイズする
リンクされた画像を含むリッチテキストボックスコントロールがある場合、メールの受信者のリストにフォームテンプレートを発行することはできないため、アセットトラッカーのサンプルテンプレートのフォームに小さな変更を加える必要があります。
-
[ファイル] メニューの [フォームテンプレートのデザイン] をクリックします。
-
[フォームテンプレートのデザイン] ダイアログボックスの [フォームテンプレートを開く] で、[サンプルのカスタマイズ] をクリックします。
-
[作業の開始] ダイアログボックスで、[サンプル資産管理] をクリックし、[フォームタスク] の [このフォームのデザイン] をクリックします。
-
AssetNotesコントロールを右クリックし、[リッチテキストボックスのプロパティ] をポイントして、[表示] タブをクリックし、[使用できる書式設定] で [リンクされた画像] チェックボックスをオフにします。
作業 2: 送信オプションを定義する
次のタスクでは、従業員が一意の名前付きフォームファイル (.xml) を、添付ファイルとして意思決定者の電子メールアカウントに送信できるように、送信オプションを定義します。
-
[ツール] メニューの [送信オプション] をクリックします。
-
[送信オプション] ダイアログボックスで、[ユーザーにこのフォームの送信を許可する] チェックボックスをオンにします。
-
[フォームのデータを1つの宛先に送信する] をクリックし、一覧で [電子メール] をクリックします。
-
[追加] をクリックします。
データ接続ウィザードが表示されます。
-
[宛先] ボックスに、送信されたすべてのフォームを受け取る意思決定者のエイリアスを入力します。
-
固有の件名行を指定するには、[件名] ボックスで次の操作を行います。
-
[数式の挿入] をクリックします。
-
次の数式を入力します。
-
concat(my:employee/my:employeeName, my:employee/my:employeeDepartment)
-
[数式の確認] をクリックし、[ OK]を2回クリックします。
-
[備考] ボックスに、適切なメッセージを入力するか、このソリューションの重要な手順を追加します。
-
[次へ] をクリックします。
-
ウィザードの次のページで、[フォームデータを添付ファイルとして送信する] をクリックし、[ユーザーがフォームを開くことができるようにフォームテンプレートを添付する] チェックボックスをオンにします。
これにより、従業員がネットワーク上の場所からアクセスできない場合に、フォームテンプレートファイル (.xsn) にアクセスすることができます。
-
[添付ファイル名] ボックスに各フォームファイル (.xml) の一意のファイル名を指定するには、次の操作を行います。
-
[数式の挿入] をクリックします。
-
[件名行に同じ数式を入力してください。
-
concat(my:employee/my:employeeName, my:employee/my:employeeDepartment)
-
[数式の確認] をクリックし、[ OK]を2回クリックします。
-
[次へ] をクリックします。
-
ウィザードの次のページの [このデータ接続の名前を入力してください] ボックスに、この送信データ接続のわかりやすい名前を入力します。
-
[概要] セクションの情報が正しいことを確認し、[完了] をクリックします。
-
意思決定者やすべての従業員がアクセスできるパブリックネットワークフォルダーにフォームを保存します。
手順 2: Excel でスキーマファイルをマッピングし、テーブルレイアウトをカスタマイズする
InfoPath と Excel の間の接続を設定するには、次の3つの作業を行う必要があります。アセットトラッカーフォームテンプレートのスキーマファイルを抽出し、このスキーマファイルを Excel にマッピングし、インポートされたすべての XML を含む Excel の表の既定のレイアウトをカスタマイズするフォームデータファイル。
作業 1: InfoPath からスキーマファイルを抽出する
-
InfoPath で、[アセットトラッカー] フォームテンプレートファイルを開きます。
-
[ツール] メニューの [このフォームのデザイン] をクリックします。
-
[ファイル] メニューの [ソースファイルとして保存] をクリックします。
-
[フォルダーの参照] ダイアログボックスで、スキーマファイルを保存するフォルダーを選択するか、新しいフォルダーを作成します。
すべてのソースファイルが保存されるフォルダーの場所と、スキーマファイルの名前 (この例では、XML データのスキーマ定義を含む) を確認します。
作業 2: InfoPath スキーマファイルを Excel にマッピングする
-
新しい Excel ファイルを作成し、それを意思決定者がアクセスできる場所に保存します。
-
Excel で、[開発] タブが表示されていない場合は、次の操作を行います。
-
Microsoft Office ボタン をクリックし、次に [Excel のオプション] をクリックします。
-
[基本設定] カテゴリの [Excel の使用に関する基本オプション] で、[[開発] タブをリボンに表示する]チェックボックスをオンにし、[ OK] をクリックします。
注: リボンは、Microsoft Office Fluent ユーザー インターフェイスのコンポーネントです。
-
-
[開発] タブの [XML] で [ソース] をクリックします。
[ XML ソース] 作業ウィンドウが表示されます。
-
[ Xml の対応付け] をクリックし、[ Xml の対応付け] ダイアログボックスで [追加] をクリックします。
-
Windows Vista を実行しているコンピューターの場合
-
アドレスバーで、セクションの手順2で作成したmyschemaファイルを含むドライブまたはフォルダーをクリックします。「作業 1: InfoPath からスキーマファイルを抽出する」を参照してください。
Microsoft Windows XP を実行しているコンピューターの場合
-
[ファイルの場所] ボックスの一覧で、手順2で作成したmyschemaファイルが保存されているドライブまたはフォルダーをクリックします。タスク 1: InfoPath からスキーマファイルを抽出します。
-
-
ファイルをクリックし、[開く] をクリックします。
-
[複数ルート] ダイアログボックスが表示されたら、myschema ファイルで定義されているassetTrackingルートノードをクリックして、[ OK]をクリックします。
XML の対応付けが [ Xml ソース] 作業ウィンドウに表示されます。
-
目的の繰り返し XML 要素であるns1: asset node 要素を、Excel テーブルを表示するワークシートの場所にドラッグします。
作業 3: Excel テーブルのレイアウトをカスタマイズする
既定では、Excel では、XML 要素名がテーブルの列見出しとして使用されます。 ただし、列見出しセルを編集することで、列見出しを変更することができます。
-
既定の列見出しを変更するには、Excel テーブルを選択したままで、次の文字列プレフィックス " ns1: asset" を見つけて削除します。 たとえば、 ns1: assetIDをIDに変更します。
-
列の幅を調整するには、[すべて選択] をクリックし、任意の列見出しの境界をダブルクリックします。
手順 3: ピボットテーブルとピボットグラフのサマリーレポートを作成する
意思決定者は、ピボットテーブルとピボットグラフレポートを使って、集計データの分析、調査、および視覚化を行います。 このシナリオで使用するピボットテーブルレポートとピボットグラフレポートを前もって設定することで、意思決定者は、後で完成したデータでレポートを実行することができます。
-
Excel のテーブル内のセルを選択します。
-
[挿入] タブの [テーブル] で [ピボットテーブル] をクリックし、[ピボットテーブル] をクリックします。
Excel に、[ピボットテーブルの作成] ダイアログ ボックスが表示されます。
-
新しいワークシートのセル A1 からピボットテーブルレポートを配置するには、[新規ワークシート] をクリックし、[ OK]をクリックします。
指定した場所に空のピボットテーブルレポートが追加され、ピボットテーブルのフィールドリストが表示されるため、フィールドの追加、レイアウトの作成、ピボットテーブルレポートのカスタマイズを行うことができます。
-
データのクロス集計レポートを作成するには、[ ID ] フィールドを [値] 領域に、[部署] フィールドを [列ラベル] 領域、[カテゴリ] フィールドを [行ラベル] 領域に、[担当者] フィールドを [レポートフィルター] 領域にドラッグします。
-
ピボットテーブル レポートをクリックします。
-
[挿入] タブの [グラフ] グループで、横棒グラフの種類をクリックします。
-
[ 2-D 横棒] で [集合横棒] を選びます。
-
ピボットグラフレポートのサイズと場所を好みに合わせて調整します。
手順 4: ユーザーから資産情報を収集する
これで、すべての従業員がフォームテンプレートを入力する準備ができたら、フォームを発行して各従業員に送信する必要があります。 各従業員が完成したフォームを送信すると、そのフォームは、意思決定者の電子メールアカウントに電子メールメッセージとして添付された XML データファイル (.xml) として送信されます。 次に、意思決定者は、すべてのメッセージを Outlook の専用の InfoPath フォルダーに移動できます。 このシナリオでは、すべてのユーザーに対して、データ収集の期限に達したときにすべての完成したフォームでレポートを実行できるように、特定の期間を割り当てることをお勧めします。
-
InfoPath で、 「手順 1: アセットトラッカーサンプルフォームテンプレートをデザインする」で保存したフォームテンプレート (.xsn) を開きます。
-
[ツール] メニューの [このフォームのデザイン] をクリックします。
-
[ファイル] メニューの [発行] をクリックします。
-
発行ウィザードで、[電子メールの宛先の一覧] をクリックし、[次へ] をクリックします。
-
ウィザードの次のページの [フォームテンプレート名] ボックスに、フォームテンプレートの名前を入力し、[次へ] をクリックします。 フォームテンプレート名は、電子メールメッセージの受信者に送信されるメッセージの件名見出しに表示されます。
-
必要に応じて、ウィザードの次のページでは、Outlook フォルダーに表示される列を作成して、メールメッセージを整理することができます。
-
[次へ] をクリックします。
-
[発行] をクリックします。
-
発行ウィザードでフォームテンプレートの発行が完了すると、フォームを含む電子メールメッセージが開きます。
-
メッセージを入力し、従業員の名前を入力するか配布リストを使用して、メッセージを送信します。
Outlook の意思決定者は、次の2つの方法のいずれかで、送信されたすべての XML フォームを整理できます。
-
メッセージを初めて開いたときにInfoPath フォームフォルダーのメッセージボックスが表示される場合は、[フォームフォルダーの作成] をクリックします。
-
Outlook でルールを作成して、関連するすべての InfoPath フォームを InfoPath フォルダーに移動します。
詳細については、「ルールを使用してメッセージを管理する」を参照してください。
手順 5: フォームを Excel にインポートする
Excel ブック手順2と3を既に作成しているため、意思決定者がフォームデータをエクスポートして確認するだけで済みます。 意思決定者は、Outlook から xml ファイル (.xml) をエクスポートして、すべてのフォームファイル (.xml) を Excel ブックにインポートし、データを更新するだけで済みます。
作業 1: Outlook から Windows フォルダーにフォームをエクスポートする
-
Outlook で、[社員] から受信したすべてのフォームが含まれているフォルダーを選択し、CTRL キーを押しながら A キーを押してすべてのフォーム電子メールメッセージを選択します。
-
選択したオブジェクトを右クリックし、[ InfoPath アクション] をポイントして、[フォームのエクスポート] をクリックします。
-
[フォームのエクスポート] ダイアログボックスでフォルダーを選択し、 [OK]をクリックします。
作業 2: フォームを Excel にインポートする
-
手順2で作成した Excel ブックで、 「スキーマファイルをマップして、excel の表レイアウトをカスタマイズする」で、excel テーブルの対応付けられているセルのいずれかを選択します。
-
[開発] タブの [ XML ] グループで、[インポート] をクリックします。
[ XML のインポート] ダイアログボックスが表示されます。
-
Windows Vista を実行しているコンピューターの場合
-
アドレスバーで、作業1で作成した xml データファイル (.xml) が保存されているフォルダーをクリックします。 Outlook から Windows フォルダーにフォームをエクスポートします。
Microsoft Windows XP を実行しているコンピューターの場合
-
[ファイルの場所] ボックスの一覧で、作業1で作成した xml データファイル (.xml) が保存されているフォルダーをクリックします。 Outlook から Windows フォルダーにフォームをエクスポートします。
-
-
次のいずれかの操作を行います。
-
ファイルが連続している場合は、SHIFT キーを押しながら、リスト内の最初のファイルと最後のファイルをクリックします。
-
ファイルが連続していない場合は、CTRL キーを押しながら、リスト内のインポートする各ファイルをクリックします。
-
-
[インポート] をクリックします。
既定では、対応付けられたセルの既存のデータは上書きされます。これは、このビジネスソリューションの目的の最終的な結果です。 ただし、意思決定者は、スケジュールされた期限の前に、データを複数回インポートして進行状況を測定することができます。
注: Excel では、[既存の xml テーブルに新しいデータを追加する] オプションを使用してデータを追加することもできます ([開発] タブの [ xml ] グループで、[マッププロパティ] をクリックします)。その他の解決策として適している場合があります。
詳細については、「 XML ファイルに接続する」を参照してください。
作業 3: ピボットテーブルとピボットグラフレポートを更新する
-
ピボットテーブルレポート内のセルをクリックします。
-
[オプション] タブの [データ] グループで、[すべて更新] の横の矢印をクリックし、[更新] をクリックします。
Excel ブックには、翌年の機器予算の割り当てに役立つデータと概要レポートがすべて含まれています。 もちろん、データの並べ替え、フィルター、または条件付き書式設定など、必要に応じて Excel ブックでさらに分析を行うことができます。
最終的な考え: SharePoint リストまたは Access データベースの使用を検討する
また、InfoPath と Excel の間でデータを転送する場合は、XML の代わりに SharePoint リストや Access データベースを使用することをお勧めします。
SharePoint リストを使用する
InfoPath では、SharePoint リストを読み取り専用のデータソースとして簡単に使用できます。 次の2つの操作のいずれかを行うことができます。
-
SharePoint リストからデータを Excel にエクスポートすると、Excel で自動的にデータ接続が作成されます。
-
Excel から SharePoint リストへのデータ接続を明示的に作成します。
データ接続が作成されたら、Excel のデータを更新して、最新のデータを取得できます。
SharePoint リストを使用してデータを追加して更新することができます。 InfoPath フォームを使用して、リストからアイテムを表示したり (たとえば、最適に表示される複雑なアイテムや長いアイテムなど)、Excel を使ってさらにデータを分析することができます。
1. InfoPath で簡単に確認できるように、1つの項目を表示します。
2. SharePoint リストのデータを追加および更新する。
3. Excel で最新の状態に更新してレポートを表示します。
詳細については、「 SharePoint ドキュメントライブラリまたはリストにデータ接続を追加する」を参照してください。
Access データベースを使用する
InfoPath では、Access データベースへの読み取り/書き込み接続を作成できます。 Excel では、更新して最新のデータを取得できるように、Access データベースへのデータ接続を明示的に作成できます。 また、ブックが開かれたときに自動的に更新されるように接続を定義することもできます。また、5分ごとなど、定期的に更新することもできます。
Access データベースは、InfoPath と Excel の中間として使用できます。 Access に InfoPath フォームを送信すると、Access データベースが更新されます。 Excel でデータ接続を更新すると、Access から更新されたデータが取得されます。 実際には、InfoPath から Excel ブックに間接的にデータを送信しています。
1. フォームを Access データベースに表示して送信します。
2. Access データベースにデータを保存します。
3. Excel で最新の状態に更新してレポートを表示します。
詳細については、「 Microsoft access データベースに基づくフォームテンプレートをデザインする」を参照してください。
ヒント: Access から直接 InfoPath フォームを作成できることをご存じでしたか? 使用しているコンピューターに Outlook 2007 または2010および InfoPath 2007 または2010がインストールされている場合は、[電子メールメッセージからデータを収集する] ウィザードを使用して、さまざまなユーザーからデータを直接 Access から収集できます。 詳細については、Access のヘルプトピック「電子メールで収集したデータを access データベースに追加する」を参照してください。