(57)【特許請求の範囲】
【請求項１】
コンピュータが表データオブジェクトを、Ｗｅｂブラウザプログラム内で開かれた第１の電子ファイルから、表計算アプリケーションプログラム内で開かれた第２の電子ファイルにコピーすることによって、表計算アプリケーションプログラム内で、Ｗｅｂクエリを作成する方法であって、コンピュータが、
Ｗｅｂブラウザプログラム内で第１の電子ファイルを開くステップと、
コンピュータへのユーザ入力に基づき、第２の電子ファイルにコピーされる表データオブジェクトを特定するステップと、
特定された表データオブジェクトを、第１の電子ファイルから、表計算アプリケーションプログラム内で開かれた第２の電子ファイルへペーストするステップと、
第１のコンピュータコマンドが表示されるべきであるかどうかを判定するステップと、
第１のコンピュータコマンドが表示されるべきであると判定することに応答して、第１のコンピュータコマンドを、表計算アプリケーションプログラムに関連付けられたドロップダウンメニュー内に挿入するステップと、
コンピュータへのユーザ入力に基づき、第１のコンピュータコマンドを特定するステップと、
第１の電子ファイルを含むＷｅｂブラウザプログラムを、表計算プログラムにおいて開かれたＷｅｂクエリダイアログボックス内で起動するステップと、
コンピュータへのユーザ入力に基づき、Ｗｅｂクエリを作成するために、表データオブジェクトをＷｅｂクエリダイアログボックス内で起動されたＷｅｂブラウザプログラムから特定するステップと
を備えたこと特徴とする方法。
【請求項２】
第１のコンピュータコマンドが表示されるべきであるかどうかを判定するステップは、
特定された表データオブジェクトが第１のフォーマットであるかどうかを判定するステップと、
特定された表データオブジェクトが第１のフォーマットであるという判定がなされた場合、
表データオブジェクトに関連付けられた第１の識別子タグが、第１の値に設定されているかどうかを判定するステップと、
識別子タグが第１の値に設定されている場合、第２のシーケンスを実行するステップとを備え、
前記第２のシーケンスを実行するステップは、
表データオブジェクトに関連付けられたＵＲＬを検索するステップと、
ＵＲＬが第２の識別子タグを含むかどうかを判定するステップと
を備えたこと特徴とする請求項１に記載の方法。
【請求項３】
第１のコンピュータコマンドは、リフレッシュ可能なＷｅｂクエリの作成コマンドであることを特徴とする請求項２に記載の方法。
【請求項４】
第１の識別子タグは、表データオブジェクトを作成したアプリケーションプログラムを識別するＭＥＴＡタグであることを特徴とする請求項２に記載の方法。
【請求項５】
第２の識別子タグは、本質的にｈｔｔｐ：／／、ｈｔｔｐｓ：／／、ｆｔｐ：／／、およびｆｉｌｅ：／／からなるグループから選択されることを特徴とする請求項２に記載の方法。
【請求項６】
第１のフォーマットはＣＦ＿ＨＴＭＬフォーマットを備えたこと特徴とする請求項２に記載の方法。
【請求項７】
コンピュータが、
リダイレクション識別子タグが、第１の電子ファイルにおける表データオブジェクトに関連付けられているかどうかを判定するステップと、
リダイレクション識別子タグが、第１の電子ファイルにおける表データオブジェクトに関連付けられている場合、リダイレクション識別子タグを、第２の電子ファイル内にペーストされた表データオブジェクトに関連付けるステップと、
リダイレクション識別子タグが表データに関連付けられていない場合、表データオブジェクト識別子が、第１の電子ファイルにおける表データオブジェクトに関連付けられているかどうかを判定するステップと、
表データオブジェクト識別子が、第１の電子ファイルにおける表データオブジェクトに関連付けられている場合、表データオブジェクト識別子を、第２の電子ファイルにおける表データオブジェクトに関連付けるステップと、
数値識別子を第２の電子ファイルにおける表データオブジェクトに関連付けるステップであって、数値識別子は、第１の電子ファイルにおける表データオブジェクトの位置を指示するステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項８】
複数のデータオブジェクトを、Ｗｅｂブラウザプログラム内で開かれた第１の電子ファイルから、表計算プログラム内で開かれた第２の電子ファイルにコピーすることによって、Ｗｅｂクエリを作成するためのコンピュータ実行可能命令を有するコンピュータ可読記録媒体であって、コンピュータに、
第１の電子ファイルをＷｅｂブラウザプログラム内で開くステップと、
第２の電子ファイルにコピーされる複数のデータオブジェクトの選択を受信するステップと、
複数のデータを第１の電子ファイルから、第２のアプリケーションプログラム内で開かれた第２の電子ファイルへコピーするための、ユーザコマンドを受信するステップと、
複数のデータをコピーするためのユーザコマンドを受信したとき、第１のシーケンスを実行するステップとを備え、
前記第１のシーケンスを実行するステップは、
複数のデータが第１のフォーマットを含むかどうかを判定するステップと、
複数のデータが第１のフォーマットを含むと判定したとき、
複数のデータに関連付けられた識別子タグが第１の値に設定されているかどうかを判定するステップと、
識別子タグが第１の値に設定されている場合、第２のシーケンスを実行するステップとを備え、
前記第２のシーケンスを実行するステップは、
複数のデータに関連付けられたＵＲＬを検索するステップと、
ＵＲＬが第２の識別子タグを含むかどうかを判定するステップと、
ＵＲＬが第２の識別子タグを含む場合、複数のデータを第１の電子ファイルから第２の電子ファイルへコピーするステップと
を実行させるためのコンピュータ実行可能命令を備えたこと特徴とするコンピュータ可読記録媒体。
【請求項９】
第１のコンピュータコマンドは、リフレッシュ可能なＷｅｂクエリの作成コマンドであることを特徴とする請求項８に記載のコンピュータ可読記録媒体。
【請求項１０】
第１の識別子タグは、複数のデータオブジェクトを作成したアプリケーションプログラムを識別するＭＥＴＡタグであることを特徴とする請求項８に記載のコンピュータ可読記録媒体。
【請求項１１】
第２の識別子タグは、本質的にｈｔｔｐ：／／、ｈｔｔｐｓ：／／、ｆｔｐ：／／、およびｆｉｌｅ：／／からなるグループから選択されることを特徴とする請求項８に記載のコンピュータ可読記録媒体。
【請求項１２】
第１のフォーマットはＣＦ＿ＨＴＭＬフォーマットを備えたこと特徴とする請求項８に記載のコンピュータ可読記録媒体。
【請求項１３】
複数のデータオブジェクトは表データオブジェクトを備えたこと特徴とする請求項８に記載のコンピュータ可読記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般にＷｅｂクエリの作成に関し、具体的には、表データを、ＷｅｂページからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへ、グラフィカルに選択かつインポートして、リフレッシュ可能なＷｅｂクエリを作成するための方法に関する。本発明はさらに、リフレッシュ可能なＷｅｂクエリをＷｅｂブラウザプログラムから直接生成することに関する。
【０００２】
【従来の技術】
Ｗｅｂクエリは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムなど、表計算プログラム内のある範囲のセルまたは表データであり、この内容がＷｅｂページから導出される。Ｗｅｂクエリの内容は、関連付けられたＷｅｂページ上に格納された表データと同じ特性を有する。たとえば、Ｗｅｂページ上に表示された表データが、小数点以下２桁の実数としてフォーマットされた場合、Ｗｅｂクエリ内の内容も、小数点以下２桁の実数としてフォーマットされる。ＨＴＭＬ文書からの内容が表計算プログラムにＷｅｂクエリとしてインポートされた後、ユーザが表データの内容を、事前定義されたコマンドを選択することによって更新することができる。これらの機能により、Ｗｅｂクエリは、内容を手動で、あるいは指定されたイベントの発生時にリフレッシュすることができる表を作成するための、大変強力なツールとなる。残念ながら、以前のバージョンのＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムでは、Ｗｅｂクエリを作成するための方法が煩わしく複雑であった。典型的には、ユーザが手動でテキストファイルを作成しなければならず、これはインターネットクエリ（「ＩＱＹ」）ファイルとして知られており、特定の構造および情報を含むものである。ＩＱＹファイルは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムにＷｅｂクエリの作成方法を指令する特定の構造を含む、テキストファイルである。典型的には、ＩＱＹファイルは、Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ（「ＵＲＬ」）、および、データのインポートおよびフォーマット方法を制御する他の特性などの情報を含む。しかし、ＩＱＹファイルを作成するには、ユーザが特定の情報を有することが必要であり、これは、ＨＴＭＬ文書の構造、および、Ｗｅｂクエリにインポートしたいデータオブジェクトについてのオブジェクト識別番号など、データオブジェクトに関する。結果として、ＩＱＹファイルを作成するには、ユーザがあるレベルのプログラミング技能を有することが必要である。したがって、多数のユーザは、Ｗｅｂクエリ機能が複雑すぎて使用できないことを発見した。
【０００３】
この問題の１つの解決法は、ワシントン州レドモンドのマイクロソフト株式会社が製造した「ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２０００」表計算プログラムに導入されたものであり、ダイアログボックスを作成して、ユーザがＷｅｂクエリを作成するための助けとすることであった。ダイアログボックスにより、ユーザが表データをＷｅｂページから、手動でＩＱＹファイルを生成する必要なしにインポートできるようになった。ダイアログボックスを使用してＷｅｂクエリを作成するため、ユーザが、データが格納されたリモート位置のアドレスを入力し、これは、Ｗｅｂページのｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ（「ＵＲＬ」）などであり、ローカルネットワーク上に格納された表データまたはＨＴＭＬファイルを含むものであった。ユーザがデータの位置を識別した後、ユーザは３つの方法のうちの１つにおいて、データをインポートする必要があった。第１に、ユーザは、単にＷｅｂページまたはＨＴＭＬファイル全体をインポートすることができた。第２に、ユーザは、ＨＴＭＬファイルに含まれた表データのすべてのインスタンスをインポートすることができた。最後に、ユーザは、表データの特定のインスタンスをインポートすることができた。Ｗｅｂページ全体または表データのすべてのインスタンスをインポートすることは、表データをインポートするためのもっとも容易な方法であるが、これらの方法は、ユーザが望まない結果を生成する。これは、Ｗｅｂページが典型的には、グラフィックス、バナー、広告など、ユーザが関心を有していない余計な情報を含むという事実による。したがって、表データの特定のインスタンスをインポートする方法が、ユーザが選択するもっとも一般的な方法である。しかし、表データの特定のインスタンスを選択してＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムにインポートするには、ユーザが、表データに関連付けられたＨＴＭＬ識別子を供給する必要があった。ＨＴＭＬ識別子は、典型的には、表識別文字列、または、ＨＴＭＬ文書内の表データの相対位置を提供するインデックス番号である。たとえば、表データがＴＡＢＬＥオブジェクトであった場合、これはＨＴＭＬ文書において以下のフォーマットを有する。すなわち、＜ＴＡＢＬＥ  ＩＤ＝″識別文字列″＞．．．データ．．．＜／ＴＡＢＬＥ＞となる。ユーザは、手動で識別文字列を判定しなければならなかった。ユーザは、識別文字列を、ＨＴＭＬのソースを見ることによって判定しなければならなかった。しかし、時として、識別文字列が提供されない可能性がある。したがって、これらの場合では、ユーザがインデックス番号を判定しなければならず、これは単にＴＡＢＬＥオブジェクトの順序数であり、ＨＴＭＬ文書に現れたようなものである。ユーザがこのデータの供給を終了した後、Ｗｅｂクエリが作成され、この内容が、ユーザが指定したＵＲＬまたはＨＴＭＬファイルからインポートされた。ダイアログボックスの使用により、ユーザが手動でＩＱＹファイルを生成する必要はなくなったが、ユーザはなお、Ｗｅｂクエリを作成するためにＷｅｂページの構造の詳細な知識を有していなければならなかった。平均的なユーザは、効果的にＷｅｂクエリを作成するための、ＨＴＭＬファイル構造についての必要な知識を有していないので、平均的なユーザは単に、表データの特定のインスタンスへのＷｅｂクエリを作成することが大変困難であり、多くの回数に渡って挫折感を引き起こすものであることを発見した。典型的には、ユーザは、ＨＴＭＬページ全体へのＷｅｂクエリを作成し、すべてのデータを、Ｗｅｂクエリのみに専用の新しい空のワークシートへ戻した。次いで、ユーザは、分析を実行したいデータからＷｅｂクエリワークシート上へ、ワークシートのリンクを作成する。これは多数のエラーに通じ、これは、Ｗｅｂクエリがリフレッシュされたとき、Ｗｅｂページ上のデータの場所が変更している可能性があるからである。たとえば、ユーザが、金融データを含むページ全体ヘのＷｅｂクエリを作成することを望み、関心のある特定の株式相場がセルＤ９に含まれていることを発見したと仮定する。次いで、ユーザは、Ｗｅｂクエリシート上のセルＤ９と、分析を実行した別のワークシートの間のリンクを作成する。しかし、ユーザがＷｅｂクエリをリフレッシュすると、Ｗｅｂページが、新しいバナー広告などの追加によって変化しており、株価相場がこのときＷｅｂクエリシートにおいてセルＧ１１に格納されるようになった可能性がある。次いで、財務分析が、ユーザが予想したものとは異なる結果を返し、これは、分析がセルＤ９にリンクされ、Ｗｅｂクエリがリフレッシュされた後にここに不正確なデータが含まれていたからである。
【０００４】
さらに、Ｗｅｂクエリを作成することは最も直観的な処理ではなく、したがって、平均的な者には困難である可能性がある。Ｗｅｂクエリを作成するには、ユーザがＷｅｂクエリダイアログボックスをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムから開き、次いで、手動で、自分の表計算プログラムに挿入したい表データを含むＷｅｂサイトのＵＲＬを入力しなければならなかった。残念ながら、大抵のユーザは、自らがＨＴＭＬ文書における表データに表計算プログラムからアクセスできることさえ理解しなかった。むしろ、大抵のユーザは、典型的には、表計算プログラムを終了し、ＨＴＭＬ文書またはＷｅｂページへ、ＭｉｃｒｏｓｏｆｔのＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムなど、インターネットブラウザを介してアクセスした。次いで、ユーザはＷｅｂページにおいて表データを選択し、コピー−ペーストコマンドを呼び出して、表データをＷｅｂページからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムへ転送した。これには、ユーザがＷｅｂブラウザプログラムとＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムの間で切り替えて、データを、ワークシートにおけるある範囲のセルにペーストすることが必要であった。
【０００５】
たとえば、ユーザが株情報をインターネットサイトからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬワークシートへダウンロードして、財務分析を実行することを望んだと仮定する。典型的には、ユーザが新しいＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬワークシートを作成し、次いで、新しいアクティブなウィンドウをＷｅｂブラウザプログラムにより開く。次に、ユーザが、所望の株情報を含むＷｅｂサイトをロードする。次いで、ユーザが株情報の表または表データを選択し、コピーコマンドを呼び出す。次に、ユーザが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムを含むウィンドウへ切り替えて、ワークシートにおいてデータを挿入する位置を選択し、ペーストコマンドを呼び出すことが必要となる。インポートされた表内の内容が静的であった場合、表データをインポートするコピー−ペースト方法が、完了となる。しかし、株情報は典型的には動的な性質であり、継続的に変化する。したがって、ユーザが自分の表データを更新するため、ユーザが継続的にコピー−ペースト方法を呼び出して、新しいデータをインポートしなければならなかった。
【０００６】
残念ながら、表データをインポートするためのコピー−ペースト方法は、非効率的であり、時間がかかる。ユーザが表データをリフレッシュあるいは更新したいとき、コピーおよびペースト処理をいたるところで繰り返さなければならない。さらに、コピー−ペースト方法を、継続的に表データを更新するために使用することにより、エラーがデータに導入されることに通じる可能性がある。たとえば、ユーザが、Ｗｅｂページにおける誤った表を更新するために選択する可能性があり、あるいは、ある範囲の表データがインポートされる場合、ユーザが不注意により、データを更新するときに異なるサイズの範囲を選択する可能性がある。いずれの場合も、最初に選択されたデータとは異なるデータを更新するために選択することにより、ユーザの分析において多数のエラーに通じる可能性がある。これらの場合においてリフレッシュ可能なＷｅｂクエリを作成することにより、コピー−ペースト方法を使用して表データを更新する繰り返しがなくなり、ユーザが引き起こすエラーの発生が減少する。さらに、大抵のユーザは、Ｗｅｂクエリ機能が存在すること、あるいは、それにアクセスする方法に気付いていない。Ｗｅｂクエリ機能に気付いているユーザにとっては、Ｗｅｂクエリを作成する処理が複雑すぎて、いかなる定期的にもこの機能を使用することができない。
【０００７】
【発明が解決しようとする課題】
したがって、当技術分野では、リフレッシュ可能なＷｅｂクエリを作成するための、より便利で「発見可能な」方法が一般に必要である。さらに、当技術分野では、ユーザがリフレッシュ可能なＷｅｂクエリを作成するオプションを発見するための、より便利で効率的な方法が必要である。さらになお、当技術分野では、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムにおいてリフレッシュ可能なＷｅｂクエリを、Ｗｅｂブラウザプログラムから直接作成するための、より効率的で、統合された、論理的な方法が必要である。
【０００８】
一般的に述べると、本発明は、Ｗｅｂクエリの作成を、平均的なユーザにとってより簡素かつより直観的にするための、上述の必要性に適合する。
【０００９】
【課題を解決するための手段】
本発明は、Ｗｅｂクエリダイアログボックスの改良であり、これにより、ユーザが、「見えた通りのものを得ることができる」（「ＷＹＳＩＷＹＧ」）技術を使用してグラフィカルにＷｅｂクエリを作成することができる。この改良は、ユーザが、Ｗｅｂページに表示された表データのインスタンスをグラフィカルに選択し、表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートへＷｅｂクエリとしてインポートすることができる方法である。この方法は、表データをワークシートにインポートするためのユーザコマンドが受信されるときに開始する。表データをインポートするためのコマンドを受信したとき、インターネットブラウザモジュールが、アプリケーションプログラムにおいて開かれたＷｅｂクエリダイアログボックス内で起動される。次いで、ユーザが、自分がインポートしたい表データを含むＷｅｂページのＵＲＬへナビゲートする。次に、表データを含むＷｅｂページがダイアログボックスにロードされる。次いで、ユーザが典型的には、表計算プログラムへＷｅｂクエリとしてインポートするための表データの少なくとも１つのインスタンスを、グラフィカルな方法を使用して選択する。次いで、ユーザはＨＴＭＬ構造についてのいかなる詳細な情報も供給することなく、表データがインポートされる。別法として、ユーザがいかなる表データも選択しない可能性があり、この場合は、Ｗｅｂページ全体が表計算プログラムへＷｅｂクエリとしてインポートされる。
【００１０】
具体的には、本発明は、表データをＷｅｂページから選択し、表データを、別のＷｅｂページなどの別のファイルへ、あるいは、別のアプリケーションプログラムにインポートあるいはコピーするための、グラフィカルな方法を提供する。Ｗｅｂページがダイアログボックスにロードされた後、ＨＴＭＬツリーが走査されて、ＨＴＭＬファイル内に存在するすべての表データが識別される。出会った表データの各インスタンスについて、アイコンが作成され、表データのインスタンスと関連付けられる。たとえば、アイコンは典型的には、表データをポイントする黒い矢印を含む、黄色の背景からなるボックスからなる。これがユーザに、ＨＴＭＬ文書内のどのオブジェクトが表データであるかについてのグラフィカルな指示を提供する。
【００１１】
次に、表データの各インスタンスの絶対位置が計算される。次いで、各アイコンが、関連付けられた表データのインスタンスの絶対位置に近接して位置付けられる。最後に、アイコンがＨＴＭＬ文書の本文に、可能な最大値に設定された、関連付けられたｚＩｎｄｅｘと共に追加され、これがＨＴＭＬ文書における最上層に対応し、アイコンがＷｅｂページのもっとも上の層に表示されるようにする。これにより、アイコンが常にユーザに対して見えることが保証される。アイコンはユーザに、表計算プログラムにインポートすることができる、Ｗｅｂページに含まれた表データのすべての可能なインスタンスの、視覚的表現を提供する。
【００１２】
アイコンがＷｅｂクエリダイアログボックスにおけるＷｅｂページ上に表示された後、ユーザがＷｅｂページ内の表データの少なくとも１つのインスタンスを選択したかどうかについての判定がなされる。ユーザがカーソルを、表データのインスタンスに関連付けられたアイコンの１つに配置したとき、これは「ｍｏｕｓｅｏｖｅｒ」イベントとしても知られており、ユーザにいくつかのグラフィカルなインジケータが提供される。最初に、アイコンの背景色を変更するなど、アイコンの視覚的な外観が変更される。次に、第２の視覚的インジケータが、表データの周囲のボックスなど、強調表示画像を描画することによってユーザに提供される。強調表示画像を描画するため、表データの寸法がＨＴＭＬ文書から検索され、表データの絶対位置と結合されて、強調表示画像が表データ上に正しく位置付けられる。次に、強調表示画像のアウトラインの色が所定の値に設定されて、表データが強調される。しかし、強調表示画像は「透過」ＧＩＦ画像を含む。これにより、画像がその上に位置付けられている間に、ユーザがなお表データを見ることができることを保証する。これらのグラフィカルなインジケータは両方とも、「ｍｏｕｓｅｏｖｅｒ」イベントが起こる間は、ユーザに対して可視のままである。
【００１３】
次に、ユーザが、表データの少なくとも１つのインスタンスを表計算プログラムにインポートすることを選択したかどうかについての判定がなされる。ユーザが表データを選択した場合、アイコンの可視インジケータおよび表データの各インスタンスのための背景色が変更される。最初に、アイコンの視覚的外観が再度変更される。たとえば、アイコンを最初に、黄色のボックスにおける黒い矢印にすることができる。「ｍｏｕｓｅｏｖｅｒ」イベントが発生したとき、アイコンの色が黄色から緑色へ変化することができる。ユーザが表データを、アイコンをクリックすることによって選択した場合、アイコン内の矢印をチェックマークに変更させることができ、あるいは、別法として、アイコンの色が緑色から青色へ変化することができる。加えて、表データの背景値が、その元の色から、システム色および白色を含む混合色へ変更される。表データの背景色を変更することによって、ユーザが容易に、自分が選択した表データのインスタンスを認識することができる。最後に、ユーザが表データをインポートしたとき、表識別文字列が記録され、これがＨＴＭＬ文書内の表データの各インスタンスの位置を指示する。しかし、表データに関連付けられた表識別文字列がなかった場合、表データに関連付けられたインデックス番号が計算され、記録される。最後に、表データのインスタンスに関連付けられたＵＲＬが、表識別文字列またはインデックス番号と共に、アプリケーションプログラム内のＷｅｂクエリに渡される。
【００１４】
本発明は、ＨＴＭＬ文書が多数のフレームを有するかどうかを判定し、ＨＴＭＬ文書の特定のフレームに戻るＷｅｂクエリを作成することもできる。あるＷｅｂ設計者は、自分のＷｅｂページを多数のフレームに分割する。各フレームを、分離したウィンドウとみなすことができ、これがＷｅｂページを使用可能なデータの部分に分割し、各部分が単一のＨＴＭＬ文書を含む。このように、Ｗｅｂ作者が多量のデータを、より意味のある有用な方法において提示することができる。
【００１５】
Ｗｅｂページが多数のフレームを含むとき、各フレームが走査されて、表データの各インスタンスが判定される。次に、アイコンが作成され、各フレーム上の表データの各インスタンスに関連付けられる。しかし、各フレームがそれ自体のウィンドウおよびＵＲＬを有し、そのため、Ｗｅｂクエリを作成するとき、親フレームのＵＲＬではなくフレームのＵＲＬが使用されて、Ｗｅｂクエリが作成される。さらに、表データのインスタンスがフレームにおいて選択されたときは、先に別のフレームにおいて選択された表データのいかなるインスタンスも選択解除される。単一のフレーム内で選択された表データの多数のインスタンスのみを、表計算プログラムにインポートすることができる。Ｗｅｂクエリの作成を単一のフレームに制限することは、以前のバージョンのＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムの制限であり、本発明のものではない。
【００１６】
加えて、本発明は、Ｗｅｂクエリスマートタグ（Ｗｅｂ  Ｑｕｅｒｙ  Ｓｍａｒｔ  Ｔａｇ）（ＷＱＳＴ）ユーティリティとして知られるソフトウェアユーティリティにおいて、Ｗｅｂクエリをユーザがより利用しやすくするための、上述の必要性に合う。ＷＱＳＴユーティリティにより、ユーザがＷｅｂクエリを作成する処理を、いくつかの方法のうちの１つにおいて、インターネットブラウザモジュールから直接開始することができる。最初の方法は、「コピー−ペーストＷｅｂクエリ（Ｃｏｐｙ−Ｐａｓｔｅ  Ｗｅｂ  Ｑｕｅｒｙ）」方法として知られており、ユーザが表データをＷｅｂページから表計算プログラムにペーストするときに開始する。ユーザが表データを表計算プログラムにペーストしたとき、リフレッシュ可能なＷｅｂクエリコマンドがユーザに提示されるべきであるかどうかの判定がなされる。Ｗｅｂクエリコマンドをユーザに提示するための判断が行われた場合、Ｗｅｂクエリを作成するためのオプションが専用のドロップダウンメニュー上に現れ、これはオンオブジェクトユーザインタフェース（ｏｎ−ｏｂｊｅｃｔ  ｕｓｅｒ  ｉｎｔｅｒｆａｃｅ）（「ＯＯＵＩ」）と呼ばれ、「スマートタグ」としても知られており、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに関連している。スマートタグは、Ｗｅｂクエリが適切であるかどうかに関わらず、表データと共に現れる。このスマートタグは、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰ−ｗｉｄｅの「ペースト回復（Ｐａｓｔｅ  Ｒｅｃｏｖｅｒｙ）」機能であり、２０００年７月２１日出願の「Ｏｎ−Ｏｂｊｅｃｔ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ」という名称の米国特許出願第０９／６２０，８７６号において全て開示されており、参照により本明細書に組み込む。
【００１７】
ユーザが、Ｗｅｂクエリをスマートタグから作成するためのオプションを選択したとき、Ｗｅｂクエリダイアログボックスが開かれ、Ｗｅｂページ全体がＷｅｂクエリへ、クリップボード上の表データが開始した場所からロードされる。ユーザが、同じ表データを再選択し、これがこのときリフレッシュ可能なＷｅｂクエリを作成するためにダイアログボックスに表示される。
【００１８】
具体的には、「コピー−ペーストＷｅｂクエリ」方法は、ユーザが表データをＷｅｂページからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにペーストするステップを開始したとき、リフレッシュ可能なＷｅｂクエリを作成するためのオプションが、スマートタグにおいてユーザに表示されるべきであるかどうかを判定するための、発見的な手順を提供する。ユーザがデータをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにペーストしたとき、表データが、「クリップボード」と呼ばれる一時記憶場所に格納される。「コピー−ペーストＷｅｂクエリ」方法は最初に、表データがコピーされた元のアプリケーションプログラムがＣＦ＿ＨＴＭＬフォーマットのデータをサポートするかどうかを判定する。ＣＦ＿ＨＴＭＬは、典型的には、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ（ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰおよび以前のバージョンのＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ）スイート（suite）のアプリケーションプログラムによって使用される、データを２つのアプリケーションプログラムの間で、クリップボードを介して転送するためのデータフォーマットである。アプリケーションプログラムがＣＦ＿ＨＴＭＬデータフォーマットをサポートしなかった場合、リフレッシュ可能なＷｅｂクエリを作成するためのオプションがユーザに提示されず、表データが表計算プログラムへ、通常の方法においてコピーされる。
【００１９】
しかし、アプリケーションがＣＦ＿ＨＴＭＬデータフォーマットをサポートした場合、「コピー−ペーストＷｅｂクエリ」方法が、表データに関連付けられた第１の識別子タグが、指定された値に設定されているかどうかを判定し、これは、表データを作成するために使用されたアプリケーションプログラムを識別するものである。第１の識別子タグが、指定された値に設定された場合、ＷＱＳＴユーティリティが、インポートされる表データを含むＷｅｂサイトに関連付けられたＵＲＬを検索する。次に、ＵＲＬが十分に形成されているかどうかの判定がなされる。つまり、ＵＲＬが以下のテキスト文字列、すなわち、「ｈｔｔｐ：／／」、「ｈｔｔｐｓ：／／」、「ｆｔｐ：／／」または「ｆｉｌｅ：／／」のうちの１つを含むかどうかが判定される。ＵＲＬが十分に形成されていた場合、リフレッシュ可能なＷｅｂクエリを作成するためのオプションが、ユーザにスマートタグ上で提示される。しかし、先行する判定ステップのいずれか１つが失敗した場合、リフレッシュ可能なＷｅｂクエリを作成するためのオプションが、ユーザにスマートタグ上で提示されない。
【００２０】
ＷＱＳＴユーティリティを、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」として知られる第２の方法において、埋め込むこともできる。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールにより、ユーザが、リフレッシュ可能なＷｅｂクエリを、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム内に、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムから直接作成することができる。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを使用してリフレッシュ可能なＷｅｂクエリを作成するには、ユーザがカーソルを、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴＥＸＰＬＯＲＥＲブラウザプログラムにおいて開かれたＷｅｂページ中の表データのインスタンス上に位置付ける。次に、ユーザが右マウスボタンを押し下げることによって、コンテキストメニューを起動する。次いで、ユーザがコマンド「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」をコンテキストメニューから選択し、これがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動する。次いで、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」を選択したときにカーソルが上に位置付けられた表データが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートへ、リフレッシュ可能なＷｅｂクエリとしてインポートされる。
【００２１】
ＷＱＳＴユーティリティを、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」として知られる第３のモジュールにおいて埋め込むこともできる。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールにより、ユーザがファイル全体を開くか、あるいは、ファイルの一部を選択して、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへ、リフレッシュ可能なＷｅｂクエリとしてインポートすることができる。ＨＴＭＬ文書が、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを使用して作成された場合、ＨＴＭＬ文書が直接ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにロードされる。しかし、ＨＴＭＬページが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを使用して作成されなかった場合、モジュールが新しいワークシートを作成し、自動的にＷｅｂクエリダイアログボックスを表示し、これにより、ユーザが、ページ全体または表データの個別インスタンスへのＷｅｂクエリを作成することができる。
【００２２】
リフレッシュ可能なＷｅｂクエリの作成を開始するには、ユーザが最初に、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムにおいて所望のＨＴＭＬ文書へナビゲートする。次いで、ユーザが、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラム内で、ドロップダウンの編集メニューをメニューバーから呼び出す。次いで、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンドを選択する。次いで、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、ＨＴＭＬ文書がＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにより作成されたか、あるいは、別のＷｅｂ開発プログラムにより作成されたかを、ＨＴＭＬ文書に関連付けられた識別タグを検査することによって判定する。識別タグは、どのＷｅｂ開発プログラムが使用されてＨＴＭＬ文書が作成されたかを指示する。識別子タグの値が、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムが使用されてその特定のＨＴＭＬ文書が作成されたことを指示した場合、「ＭｉｃｒｏｓｏｆｔＥｘｃｅｌで編集」モジュールが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを開き、ＨＴＭＬ文書全体をＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークブック内でロードする。
【００２３】
しかし、識別子タグが、別のＷｅｂ開発アプリケーションプログラムが使用されてＨＴＭＬファイルが作成されたことを指示した場合、「ＭｉｃｒｏｓｏｆｔＥｘｃｅｌで編集」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動し、新しいワークブックを作成し、新しいＷｅｂクエリダイアログボックスを開き、これにＨＴＭＬ文書のＵＲＬがプレロードされる。次いで、ユーザが、Ｗｅｂクエリにインポートするために、Ｗｅｂページ全体か、または、表データの特定のインスタンスを選択することができる。
【００２４】
本発明が、リフレッシュ可能なＷｅｂクエリを作成するための方法の欠点を改善し、上述の利点を果たすことは、例示的実施形態の以下の詳細な説明および添付の図面と、特許請求の範囲とから明らかになるであろう。
【００２５】
【発明の実施の形態】
本発明は、ユーザーがオブジェクト（すなわち、表データ）をＷｅｂページからグラフィカルに選択し、これを表計算プログラムにインポートできるようにするための方法を対象とする。本発明の例示的実施形態は、「ＭＩＣＲＯＳＯＦＴＥＸＣＥＬ  ２００２」表計算プログラムにおいて実施され、これはワシントン州レドモンドのマイクロソフト株式会社が製造した表計算プログラムである。
【００２６】
例示的実施形態を、一般に、パーソナルコンピュータ上で動作するプログラムおよびオペレーティングシステムに関連して記載するが、本発明を、他のタイプのコンピュータ用の他のプログラムモジュールと共に実施することもできることは、当業者には理解されよう。さらに、本発明を、スタンドアロンまたは分散コンピューティング環境において実施することができることは、当業者には理解されよう。分散コンピューティング環境では、プログラムモジュールを物理的に、異なるローカルかつリモートの記憶デバイスに位置付けることができる。プログラムモジュールの実行は、ローカルにスタンドアロンの方法で、あるいは、リモートでクライアント／サーバの方法で行われることができる。このような分散コンピューティング環境の例には、オフィスのローカルエリアネットワーク、企業全体のコンピュータネットワーク、および地球規模のインターネットが含まれる。
【００２７】
ここで、図面では、いくつかの図中で同様の数値は同様の要素を表し、これを参照して、本発明の態様および例示的動作環境を説明する。
【００２８】
例示的動作環境
図１および以下の解説は、本発明を実施することができる適切なデータコンピューティング環境の、簡単で一般的な説明を提供することを意図するものである。本発明を一般に、パーソナルコンピュータと共にオペレーティングシステム上で動作するアプリケーションプログラムに関連して説明するが、本発明を、他のプログラムモジュールと共に実施することもできることは、当業者には理解されよう。一般に、プログラムモジュールには、ルーチン、プログラム、コンポーネント、データ構造などが含まれ、これらが特定のタスクを実行し、あるいは特定の抽象データ型を実施する。さらに、本発明を他のコンピュータシステム構成により実施することができ、これらにはハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのあるいはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどが含まれることは、当業者には理解されよう。本発明はまた、分散コンピューティング環境において実施することもでき、タスクがリモートの処理デバイスによって実行され、これらが通信ネットワークを介してリンクされる。分散コンピューティング環境では、プログラムモジュールをローカルかつリモートの記憶デバイスに位置付けることができる。
【００２９】
図１を参照すると、本発明を実施するための例示的システムは、従来のパーソナルコンピュータ２０を含み、これが、処理装置２１、システムメモリ２２、および、システムメモリを処理装置２１に結合するシステムバス２３を含む。システムメモリ２２は読取り専用メモリ（ＲＯＭ）２４およびランダムアクセスメモリ（ＲＡＭ）２５を含む。基本入出力システム２６（ＢＩＯＳ）は、スターとアップ中など、情報をパーソナルコンピュータ２０内の要素の間で転送するための助けとなる基本ルーチンを含み、ＲＯＭ２４に格納される。パーソナルコンピュータ２０はさらに、ハードディスクドライブ２７、たとえば、リムーバルディスク２９から読み取りあるいはこれに書き込むための磁気ディスクドライブ２８、および、たとえば、ＣＤ−ＲＯＭディスク３１から読み取るか、あるいは他の光媒体から読み取りあるいはこれに書き込むための光ディスクドライブ３０を含む。ハードディスクドライブ２７、磁気ディスクドライブ２８、および光ディスクドライブ３０が、システムバス２３へ、それぞれハードディスクドライブインタフェース３２、磁気ディスクドライブインタフェース３３、および光ドライブインタフェース３４によって接続される。ドライブおよびそれらの関連付けられたコンピュータ可読媒体が、パーソナルコンピュータ２０用の不揮発性記憶装置を提供する。上のコンピュータ可読媒体の説明では、ハードディスク、取外し可能磁気ディスクおよびＣＤ−ＲＯＭディスクを参照したが、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジなど、コンピュータにより可読である他のタイプの媒体も例示的動作環境において使用できることを、当業者には理解されたい。
【００３０】
いくつかのプログラムモジュールをドライブおよびＲＡＭ２５に格納することができ、これには、オペレーティングシステム３５−１、３５−２、ＷＱＳＴ（Ｗｅｂクエリスマートタグ）ユーティリティ１００などの１つまたは複数のアプリケーションプログラム３６−１、３６−２、他のプログラムモジュール３７−１、３７−２およびプログラムデータ３８−１、３８−２が含まれる。ユーザは、コマンドおよび情報をパーソナルコンピュータ２０へ、キーボード４０、および、マウス４２などのポインティングデバイスを介して入力することができる。他の入力デバイス（不図示）には、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどを含んでもよい。これらおよび他の入力デバイスが、しばしば処理装置２１へ、システムバスに結合されたシリアルポートインタフェース４６を介して接続されるが、これを、ゲームポートまたはユニバーサルシリアルバス（ＵＳＢ）など、他のインタフェースによって接続することもできる。モニタ４７または他のタイプの表示デバイスも、システムバス２３へ、ビデオアダプタ４８などのインタフェースを介して接続される。モニタに加えて、パーソナルコンピュータは典型的には、スピーカまたはプリンタなど、他の周辺出力デバイス（不図示）を含む。
【００３１】
パーソナルコンピュータ２０は、ネットワーク環境において、リモートコンピュータ４９など、１つまたは複数のリモートコンピュータへの論理接続を使用して動作することができる。リモートコンピュータ４９は、サーバ、ルータ、ピアデバイス、または他の共通ネットワークノードにすることができ、典型的には、パーソナルコンピュータ２０に関して記載した要素の多数またはすべてを含むが、記憶デバイス５０のみを図１に例示した。図１に示す論理接続は、ローカルエリアネットワーク（ＬＡＮ）５１および広域ネットワーク（ＷＡＮ）５２を含む。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネットおよびインターネットにおいて一般的である。
【００３２】
ＬＡＮネットワーキング環境において使用するとき、パーソナルコンピュータ２０がＬＡＮ５１へ、ネットワークインタフェース５３を介して接続される。ＷＡＮネットワーキング環境において使用するとき、パーソナルコンピュータ２０が典型的にはモデム５４、または、インターネットなどのＷＡＮ５２を介して通信を確立するための他の手段を含む。モデム５４は、内部あるいは外部にすることができ、システムバス２３へ、シリアルポートインタフェース４６を介して接続される。ネットワーク環境では、パーソナルコンピュータ２０に関して示したプログラムモジュール、またはその一部を、リモート記憶デバイスに格納することができる。図示のネットワーク接続は例示的であり、通信リンクをコンピュータの間で確立する他の方法を使用することができることを理解されたい。
【００３３】
本発明の例示的実施形態  
Ｗｅｂクエリダイアログ  
Ｗｅｂクエリダイアログは、オブジェクトをＷｅｂページからアプリケーションプログラムにインポートするタスクを簡素化する。具体的には、Ｗｅｂクエリダイアログにより、ユーザが、マイクロソフトのＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムなど、表計算プログラムにインポートしたい表データを、Ｗｅｂページからグラフィカルに選択することができる。ユーザが、表データをＷｅｂページからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２スプレッドシートにインポートするためのオプションを選択したとき、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２に関連付けられたＷｅｂクエリダイアログボックスが表示内に現れる。ＷｅｂクエリダイアログボックスがＷｅｂブラウザコントロールをホスト（ｈｏｓｔ）し、これはダイナミックリンクライブラリ（「ＤＬＬ」）コントロールであり、「ＳＨＤＯＣＶＷ．ＤＬＬ」として知られている。ＷｅｂブラウザコントロールをＷｅｂクエリダイアログボックス内でホストすることは、当技術分野において周知であり、したがって、Ｗｅｂブラウザコントロールをダイアログボックスにおいてホストすることについての完全な説明を、この適用例では記載しない。
【００３４】
Ｗｅｂブラウザコントロール、ＳＨＤＯＣＶＷ．ＤＬＬは、Ｗｅｂブラウザモジュールをホストし、これは別のＤＬＬコントロールであり、「ＭＳＨＴＭＬ．ＤＬＬ」として知られる。ＭＳＨＴＭＬ．ＤＬＬコントロールは、マイクロソフトのＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ  Ｗｅｂブラウザアプリケーションプログラム用のブラウザコンポーネントである。ＷｅｂブラウジングモジュールのＭＳＨＴＭＬ．ＤＬＬまたは他のいかなるＷｅｂブラウジングモジュールをもホストすることにより、Ｗｅｂブラウザコントロールに、ＷｅｂページをＨＴＭＬなどのグラフィカルなフォーマットで表示する能力を提供する。ＷｅｂブラウザコントロールがＷｅｂページを表示できるようにすることに加えて、Ｗｅｂブラウジングモジュールにより、Ｗｅｂ開発者は、ドキュメントオブジェクトモデル（「ＤＯＭ」）を介して、ＨＴＭＬ文書の要素と、プログラムにより対話することが、Ｗｅｂブラウザコントロールを介して可能となる。たとえば、Ｗｅｂ開発者が、Ｗｅｂページにおける表要素の集まりをプログラムにより見て、Ｗｅｂページ内のオブジェクトの左上の座標をプログラムにより計算することなどができる。
【００３５】
ＭＳＨＴＭＬ．ＤＬＬコントロールをＷｅｂクエリダイアログボックスにおいてホストすることにより、ユーザはＷｅｂページの周辺でグラフィカルにナビゲートし、ＷｅｂページがＷｅｂクエリダイアログボックスで表示される間に、Ｗｅｂページ内のオブジェクトをグラフィカルに選択することができる。ＨＴＭＬフォーマットにより、多数のＷｅｂページをグラフィカルな様式において共にリンクさせることもできる。これにより、ユーザが、手動でＷｅｂページのテキストのアドレスをアドレスバーに入力するのではなく、Ｗｅｂページにおいて表示されたオブジェクトを、マウスなどのポインティングデバイスを使用して選択することによって、別のＷｅｂページを開くことができる。
【００３６】
ＷｅｂブラウザコントロールのＳＨＤＯＣＶＷ．ＤＬＬがＷｅｂクエリダイアログボックスにおいて開かれた後、最初のＷｅｂページが表示される。最初のＷｅｂページは、いかなるＷｅｂサイトにすることもでき、これはユーザが自分のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム用の自分の「ホームページ」として設定したものである。何らかの理由で、ユーザが「ホームページ」を自分のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム内で割り当てていなかった場合、最初のＷｅｂページは、ユーザのＷｅｂブラウザプログラム用のレジストリにおけるデフォルトページとして設定されているＷｅｂページとなる。しかし、ユーザがホームページを自分のＷｅｂブラウザプログラム用に割り当てていなかった場合、最初のページに、Ｗｅｂクエリにハードコードされた所定のＵＲＬがロードされる。
【００３７】
たとえば、ユーザの表計算プログラムがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムであり、ユーザのＷｅｂブラウザプログラムがＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムであった場合、最初のＷｅｂページは、レジストリの場所「ＨＫｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼ｏｆｆｉｃｅ＼１０．０＼Ｅｘｃｅｌ＼Ｏｐｔｉｏｎｓ＼ＷｅｂＱｕｅｒｙ  ＨｏｍｅＰａｇｅ」に格納されたＵＲＬとなる。このレジストリ入力が存在しなかった場合、レジストリの場所「ＨＫｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ＼Ｍａｉｎ＼Ｓｔａｒｔ  Ｐａｇｅ」が、ユーザのＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムの最初のＷｅｂページを含んでおり、これが検査される。しかし、このレジストリの場所が存在しなかった場合、ダイアログボックスには、「ｈｔｔｐ：／／ｗｗｗ．ｍｓｎ．ｃｏｍ」などの所定のＵＲＬまたは他のいずれかのＵＲＬがロードされる。最初のページがロードされた後、ユーザは、表計算プログラムへのインポートにおいて関心のある表データを含む任意のＷｅｂページへナビゲートする自由を有しており、これは、リモートサイトへグラフィカルにホットリンクすることによって、あるいは、所望のＷｅｂページの有効なＵＲＬを手動で入力することによって行う。
【００３８】
別の代替方法として、ユーザが所望のＵＲＬを、もっとも最近表示されたＷｅｂサイトのリストを含むドロップダウンメニューから選択することができる。Ｗｅｂクエリを作成したいユーザは典型的には、表データを含むＷｅｂページにナビゲートするが、ユーザがＷｅｂクエリダイアログボックスを使用して、表データを含むものだけでなく、Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ上のいかなるサイトにもナビゲートできることに留意されたい。
【００３９】
ＷｅｂページがＷｅｂクエリダイアログボックス内で表示されると、Ｗｅｂページ内の表データなど、データオブジェクトが解析される。トリガイベントは、Ｗｅｂクエリダイアログボックスの起動、および、Ｗｅｂページの、ダイアログボックスにおいてホストされたＷｅｂブラウザモジュールへのダウンロードである。Ｗｅｂページのローディングが終了すると、ＨＴＭＬ文書は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートすることができる表データなど、データオブジェクトについて走査される。たとえば、ユーザがＷｅｂクエリをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて作成した場合、Ｗｅｂページが、Ｗｅｂクエリダイアログボックスにダウンロードされたとき、表データについて走査される。同様に、ユーザがデータを、ＭＩＣＲＯＳＯＦＴ  ＰＯＷＥＲＰＯＩＮＴプレゼンテーションプログラムなどのプレゼンテーションプログラムにインポート中であった場合、Ｗｅｂページがグラフィカルデータについて走査される。この出願のためにのみ、解説は、表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートすることを対象とすることに留意されたい。しかし、テキスト、グラフィカルおよびデータベースなど、他のフォーマットのオブジェクトを、このようなデータフォーマットをサポートする他のアプリケーションプログラムへ、本発明の範囲から逸脱することなくインポートできることは、当業者には理解されよう。
【００４０】
出会った表データの各インスタンスについて、アイコンが作成され、表データに関連付けられる。アイコンは、ユーザが、表計算プログラムにインポートすることができる表データのあらゆるインスタンスを迅速に識別するための助けとなる。たとえば、表データを、ＨＴＭＬ文書内で、ＴＡＢＬＥ、ＰＲＥ、ＸＭＰ、ＬＩＳＴＩＮＧおよびＰＬＡＩＮＴＥＸＴなど、いくつかのタグのうちの１つに格納することができる。したがって、ＨＴＭＬ文書において出会った、上に列挙した各タグについて、アイコンが生成され、各タグに関連付けられる。しかし、ＴＡＢＬＥタグを、ＨＴＭＬ文書内でプレースホルダまたはスペーサとして使用することができ、これは意味のあるデータを含まなくてもよい。したがって、プレースホルダとして使用されるＴＡＢＬＥタグのこれらの特定のインスタンスを省略することは助けになる。したがって、アイコンを、ＴＡＢＬＥタグに格納された表データのインスタンスと関連付ける前に、ＴＡＢＬＥタグの水平および垂直の寸法が検索される。水平または垂直の寸法のいずれかがしきい値よりも小さかった場合、アイコンがその特定のＴＡＢＬＥタグと関連付けられない。たとえば、ＴＡＢＬＥタグがスペーサとして使用されるかどうかを判定するためのしきい値を８画素にすることができ、それは、これが標準テキスト文字の最小寸法であるからである。このように、８画素より小さい垂直または水平の寸法を有するいかなるＴＡＢＬＥオブジェクトも、意味のあるデータを含まない可能性が高く、したがってバイパスされる。
【００４１】
アイコンが表データの各インスタンスに関連付けられると、表データの各インスタンスについての左上隅の絶対位置が計算される。典型的には、ＨＴＭＬ文書において、ＨＴＭＬ文書内の各オブジェクトの位置が、親オブジェクトに相対的に述べられる。親オブジェクトの位置は、ＨＴＭＬ文書の本文に相対的に述べられる。したがって、表データの各インスタンスの絶対位置を計算するため、表データの各インスタンスのための相対位置がドキュメントオブジェクトモデル（「ＤＯＭ」）から検索される。次に、表データの各インスタンスについて、相対位置がその親の相対位置に加算される。したがって、表データの各インスタンスについての合計の相対位置が得られる。次に、各表データについての合計の相対位置が、Ｗｅｂページの本文の開始の絶対位置に加算されて、表データの各インスタンスについての絶対位置が得られる。この計算は２回実行される。すなわち、垂直または「上」の位置について１回、および、水平または「左」の位置について１回である。典型的には、表データの各インスタンスの左上隅についての絶対位置が計算される。しかし、表データのいかなる部分の絶対位置も、本発明の範囲を変更することなく計算することができる。表データの左上隅の絶対位置が計算された後、アイコンが、計算された絶対位置に近接して、ＨＴＭＬ文書に挿入される。これにより、ユーザがアイコンを表データにグラフィカルに関連付けることができることを保証する。
【００４２】
図を参照すると、図２は、Ｗｅｂクエリダイアログボックス２０５がＷｅｂページを表示する方法の例示である。Ｗｅｂクエリダイアログボックス２０５は典型的には、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム内で表示される。Ｗｅｂクエリダイアログボックス２０５は典型的には、現在表示中であるＷｅｂページのＵＲＬを表示するためのアドレスバー２１０を含む。Ｗｅｂクエリダイアログボックス２０５は一連のコマンドボタンも含み、これは、アドレスバー２１０において表示されたＵＲＬをダウンロードするための「ＧＯ」ボタン２１５、および、以前のＵＲＬを表示するための「ＢＡＣＫ」ボタン２２０などである。ダイアログボックス２０５は、ユーザが表データをインポートすることができる「ＩＭＰＯＲＴ」ボタン２３５、および、Ｗｅｂクエリ操作を打ち切り、Ｗｅｂクエリダイアログボックス２０５を閉じるために使用することができる「ＣＡＮＣＥＬ」ボタン２４０も含む。
【００４３】
ダイアログボックス２０５はＷｅｂブラウザコントロール２２５も動作し、これはＳＨＤＯＣＶＷ．ＤＬＬとしても知られる。Ｗｅｂブラウザコントロール２２５はＯＣＸであり、これは、Ｗｅｂブラウザモジュール、または、ワードプロセッサ若しくは表計算プログラムなど、他のＡｃｔｉｖｅＸ文書をホストすることができる。Ｗｅｂブラウザコントロール２２５は、ＭＳＨＴＭＬ．ＤＬＬと呼ばれるＷｅｂブラウザモジュールをホストし、これは、ＨＴＭＬ文書を解析かつ表示することができる。したがって、このような方法において、Ｗｅｂブラウザコントロール２２５が、Ｗｅｂページをダイアログボックス２０５内に表示することができる。
【００４４】
図３は、ウィンドウ３００の例示であり、これは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて、ユーザが外部データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートするためのオプションを選択したときの、典型的な画面表示を示す。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ３００は、ドロップダウンメニューバー３０５およびコマンドバー３１０を含む。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ３００は、閲覧領域３１５も含む。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２プログラムの内容が、閲覧領域３１５において閲覧され、これは、テキスト、数値、公式などを含むことができる複数のセルを含む。
【００４５】
ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ３００に関連付けられたものが、「新しいＷｅｂクエリ（Ｎｅｗ  Ｗｅｂ  Ｑｕｅｒｙ）」ダイアログボックス３２０であり、表計算プログラム内に現れる。新しいＷｅｂクエリダイアログボックス３２０は、Ｗｅｂページに関連付けられたＵＲＬを含む標準のアドレスバー３２５、および、Ｗｅｂページの内容を表示する閲覧領域３３０を含む。典型的には、アドレスバー３２５が最初に、新しいＷｅｂクエリオプションが選択されたときにプレロードされる最初のＵＲＬを含む。通常は、最初のＵＲＬは、レジストリキー「ＨＫｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼Ｏｆｆｉｃｅ＼１０．０＼Ｅｘｃｅｌ＼Ｏｐｔｉｏｎｓ＼ＷｅｂＱｕｅｒｙ  ＨｏｍｅＰａｇｅ」に含まれた、ユーザのスタートアップＷｅｂページのアドレスである。しかし、ユーザがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラム用に選択された最初のスタートアップＷｅｂページを格納しなかった場合、レジストリキー「ＨＫｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ＼Ｍａｉｎ＼Ｓｔａｒｔ  Ｐａｇｅ」内にユーザのＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラム用のホームページとして格納されているＷｅｂページがロードされる。しかし、ユーザが、自分のＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラム用のホームページとして列挙されたＵＲＬアドレスを有していなかった場合、「ｗｗｗ．ｍｓｎ．ｃｏｍ」など、事前定義されたＵＲＬがアドレスバーにロードされる。この最後の事前定義されたＵＲＬは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに「ハードコード」されている。この時点で、ユーザは自由にインターネットをナビゲートして、インポートしたい表データを含むＷｅｂページを探し出すことができる。ユーザは、手動でＷｅｂサイトのＵＲＬをアドレスバー３２５に入力することができ、あるいは、ポインティングデバイスを使用して、インターネット中を操作することができる。ユーザが適切なＷｅｂページを選択した後、これがインターネットブラウザモジュールにダウンロードされる。例示においては、アドレスバーがＵＲＬ「ｈｔｔｐ：／／ｆｉｎａｎｃｅ．ｙａｈｏｏ．ｃｏｍ／ｑ？ｓ＝ｍｓｆｔ＆ｄ＝ｖ１」を含み、これが、ダイアログボックス３２０の閲覧領域３３０において表示されたＷｅｂページに関連付けられる。
【００４６】
複数のアイコン３４０−１〜３４０−３は、それぞれ視覚的属性を有し、Ｗｅｂページにおいて表データの各インスタンスに近接して表示される。各アイコン３４０が、Ｗｅｂページ上のどのオブジェクトが表データであり、表計算プログラムにインポートすることができるかについての視覚的指示を、ユーザに提供する。加えて、Ｗｅｂページ全体のためのアイコン３３５が、閲覧領域３３０の左上隅に表示される。これはユーザに、Ｗｅｂページ全体の内容を表計算プログラムにインポートすることができることを指示する。表データの各インスタンスに関連付けられたアイコン３４０−１〜３４０−３、および、Ｗｅｂページ全体のためのアイコン３３５は、すべて少なくとも１つの視覚的属性を有し、これは、色、記号、テキスト、フォント、または、これらに関連付けられたこれらの要素の組み合わせなどである。たとえば、例示においては、各アイコン（３３５、３４０−１〜３４０−３）が、ボックスによって囲まれた矢印を含み、この背景色が黄色に設定される。これらのアイコン（３３５、３４０）が、表データを含むＷｅｂページにおいてオブジェクトを迅速に識別する利点を提供する。このように、基のＨＴＭＬ文書を見直さなければならないのではなく、ユーザは単に、新しいＷｅｂクエリダイアログボックス３２０において表示されたＷｅｂページを見て、どの要素をＷｅｂクエリにインポートすることができるかについてのグラフィカルな表現を得ることができる。
【００４７】
図４は、ユーザが表データのインスタンスをＷｅｂページから選択した後の、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ３００を示す、典型的な画面表示の例示である。例示では、カーソル３４５が、表データ４０５に関連付けられたアイコン４１０の上に位置付けられる。カーソル３４５がアイコン４１０、または他のいずれかのアイコンの上に位置付けられるとき（「ｍｏｕｓｅｏｖｅｒ」イベントとして知られる）、アイコン４１０に関連付けられた視覚的属性が変更される。たとえば、図および例示的実施形態では、カーソル３４５がアイコン４１０の上に位置付けられるときはいつでも、アイコン４１０の背景色が黄色から緑色へ変化した。これにより、ユーザへ、表データが選択するために使用可能であるという視覚的指示を提供する。加えて、「ｍｏｕｓｅｏｖｅｒ」イベントの間、表データと同じ寸法を有するボックス４１５など、第２のインジケータを、アイコン４１０に関連付けられた表データ４０５の上に位置付けることができる。この第２のインジケータは、追加の視覚的サインをユーザに提供し、Ｗｅｂページ上のどの表データをユーザが選択することができるかを例示する。第２のインジケータはＧＩＦ画像４１５から成る。ＧＩＦ画像４１５は、透過的な強調表示画像の周囲の、枠付きボックスから成る。枠付きボックスは、暗色（たとえば青）に対応する色値から成り、これが視覚的に表データ４０５をＷｅｂページの残りから分離する。強調表示またはボックスの内部は、透過ＧＩＦフォーマットの画像を含む。透過ＧＩＦフォーマットの画像により、ユーザが表データ４０５を、ボックスを介して見ることができる。加えて、テキストボックス４２０を表示して、ユーザに、表データについての追加情報を提供することもできる。例示的実施形態では、ｍｏｕｓｅｏｖｅｒイベントが起こるときは、テキストボックス４２０が、アイコン４１０に近接して、「クリックしてこの表を選択（Ｃｌｉｃｋ  ｔｏ  ｓｅｌｅｃｔ  ｔｈｉｓ  ｔａｂｌｅ）」という命令と共に現れる。他の適切な命令をテキストボックス４２０内に、本発明の範囲を変更することなく配置できることは、当業者には理解されよう。たとえば、テキストボックス４２０は、別法として、表データが名前付きの範囲であった場合、表データの名前を含むことができる。
【００４８】
図５は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおける画面表示の例示であり、リフレッシュ可能なＷｅｂクエリをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにおいて作成する結果を例示する。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ３００は、内容ウィンドウ（ｃｏｎｔｅｎｔ  ｗｉｎｄｏｗ）３１５（図３）において表示されたセル内にインポートされた表データ５０２を示す。「外部データ（Ｅｘｔｅｒｎａｌ  Ｄａｔａ）」メニューボックス５０４が、表データ５０２に近接して表示され、これは、「クエリの編集（Ｅｄｉｔ  Ｑｕｅｒｙ）」ボタン５０６、「データ範囲プロパティ（Ｄａｔａ  Ｒａｎｇｅ  Ｐｒｏｐｅｒｔｉｅｓ）」ボタン５０８、「クエリパラメータ（Ｑｕｅｒｙ  Ｐａｒａｍｅｔｅｒｓ）」ボタン５１０「データのリフレッシュ（Ｒｅｆｒｅｓｈ  Ｄａｔａ）」ボタン５１２、「リフレッシュの取り消し（Ｃａｎｃｅｌ  Ｒｅｆｒｅｓｈ）」ボタン５１４、「すべてのリフレッシュ（Ｒｅｆｒｅｓｈ  Ａｌｌ）」ボタン５１６、および「ステータスのリフレッシュ（Ｒｅｆｒｅｓｈ  Ｓｔａｔｕｓ）」ボタン５１８を含む。「データのリフレッシュ」ボタン５１２が選択されたとき、表データ５０２が、表データを含むＷｅｂページにおいて起こったいかなる変化によっても、自動的に更新される。
【００４９】
図６は、表データをＷｅｂページからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートへ、Ｗｅｂクエリダイアログボックス３２０（図３）を使用してインポートするための方法を例示する、ルーチン６００の論理的流れ図である。ルーチン６００はステップ６０５で開始し、ユーザが、新しいＷｅｂクエリダイアログボックス３２０（図３）を表計算プログラム内から開くためのコマンドを選択する。ステップ６０５の後にステップ６１０が続き、ユーザが新しいＷｅｂクエリダイアログボックスを作成することを意図したか、既存のＷｅｂクエリダイアログボックスを開くことを意図したかについての判定がなされる。ユーザが新しいＷｅｂクエリダイアログボックス３２０を作成することを選択した場合、「作成」分岐の後にステップ６１５が続き、最初のＷｅｂページが新しいＷｅｂクエリダイアログボックス３２０にロードされる。最初のＷｅｂページは、ユーザが自分のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム用の自分の「ホームページ」として設定した、いかなるＷｅｂサイトにすることもできる。何らかの理由で、ユーザがホームページを自分のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて設定していなかった場合、自分のＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラム用のホームページが、Ｗｅｂクエリダイアログボックスにおける最初のページとして使用される。しかし、ユーザが自分のＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラム内で関連付けられた「ホームページ」を有していなかった場合、表示される最初のページが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにハードコードされたＷｅｂサイトとなる。たとえば、レジストリの場所「ＨＫｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼Ｏｆｆｉｃｅ＼１０．０＼Ｅｘｃｅｌ＼Ｏｐｔｉｏｎｓ＼ＷｅｂＱｕｅｒｙ  ＨｏｍｅＰａｇｅ」に格納された、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに関連付けられた最初のＷｅｂページが、最初のＷｅｂページとしてＷｅｂクエリダイアログボックスにロードされる。何らかの理由で、このキーが存在しなかった場合、Ｗｅｂページが、レジストリの場所「ＨＫｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ＼Ｍａｉｎ＼Ｓｔａｒｔ  Ｐａｇｅ」に格納された、ユーザのＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲの「ホームページ」となる。しかし、このレジストリの場所に格納されたＵＲＬがなかった場合、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにハードコードされた所定のＵＲＬが、Ｗｅｂクエリダイアログボックスに最初のホームページとしてロードされる。たとえば、ユーザが、自分のＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラム用の自分のデフォルトホームページとして指定された、最初のＷｅｂページを有していなかった場合、ＵＲＬ「ｈｔｔｐ：／／ｗｗｗ．ｍｓｎ．ｃｏｍ」が最初にダイアログボックスにロードされる。最初のＷｅｂページがダイアログボックス��ロードされた後、ユーザは、自由にインターネットをナビゲートして、自分のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートしたい、表データを含むＷｅｂページを、ロードすることができる。
【００５０】
ステップ６１５の後にステップ６２０が続き、ユーザがダイアログボックス内で、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートするための表データを、Ｗｅｂページからグラフィカルに選択する。ユーザは、マウスなどのポインティングデバイスを使用して、カーソルを表データの上に位置付けてデータを選択することができる。別法として、ユーザは、キーボード、スタイラス、ライトペンなど、他のポインティングデバイスを使用して、表データを選択することもできる。たとえば、ユーザが「ＴＡＢ」キーを使用して、Ｗｅｂページに表示された、表データのあるインスタンスから表データの別のインスタンスへ順次に移動することができる。ユーザがカーソルを、ユーザが自分のＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートしたい表データの上に位置付けた後、次いで、ユーザがデータを選択する。典型的には、データは、マウス上で事前定義されたボタンをクリックすることによって選択される。しかし、表データを選択する他の方法を使用することができ、これは、キーボード上で「ＥＮＴＥＲ」キーを押し下げること、または、スタイラスを押し下げることなどである。この解説は、データの単一のインスタンスを選択することを対象としたが、Ｗｅｂページ内の表データの多数のインスタンスを選択できることを理解されたい。
【００５１】
次に、ステップ６２０の後にステップ６２５が続き、選択された表データがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートへ、クエリテーブルとしてインポートされる。典型的には、ユーザが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ２００２ワークシート内でクエリテーブルが位置付けられる位置を、カーソルを所望の場所に近接したセルの上に配置して、事前定義されたマウスボタンまたはキーを押し下げることによって、選択する。最後に、表データがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートされた後、ステップ６２５の後に「終了」ステップが続く。
【００５２】
しかし、ステップ６１０へ戻ると、ユーザが新しいＷｅｂを作成することを選択せずに、既存のＷｅｂクエリを開いた場合、「編集」分岐の後にステップ６３０が続き、既存のＷｅｂクエリに関連付けられたＷｅｂページがＷｅｂクエリダイアログボックスにロードされる。たとえば、ユーザが先にＷｅｂクエリを作成していた場合、ユーザは、クエリテーブルを表計算プログラムにおいて選択し、編集コマンドをメニューバーから呼び出すことによって、既存のＷｅｂクエリを開くことができる。ＷｅｂページがＷｅｂクエリダイアログボックスにロードされた後、ルーチン６００がステップ６２０へ進行し、ユーザが、編集、あるいは表計算プログラムにＷｅｂクエリとしてインポートするための、表データの少なくとも１つのインスタンスをグラフィカルに選択する。既存のＷｅｂクエリダイアログボックスにインポートするための表データを選択するための方法は、上述の、新しいＷｅｂクエリダイアログボックスにインポートするための表データを選択するための方法に等しい。次いで、ステップ６２０の後にステップ６２５が続き、選択された表データがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートされる。最後に、ステップ６２５の後に「終了」ステップが続く。
【００５３】
図７は、図６のルーチン６１５を例示する論理的流れ図であり、ＷｅｂページをＷｅｂクエリダイアログボックスにロードするものである。ルーチン６１５はステップ７０５で開始し、アイコンおよびイベントハンドラが生成され、Ｗｅｂページ全体に関連付けられる。アイコンをＷｅｂページ全体に関連付けることにより、ユーザが、表データの特定のインスタンスではなく、Ｗｅｂページ全体を表計算プログラムにインポートすることができる。
【００５４】
次に、ステップ７０５の後にステップ７１０が続き、最初の表データオブジェクトがドキュメントオブジェクトモデル（「ＤＯＭ」）から検索される。表データを、Ｗｅｂページにおけるいくつかの異なるオブジェクトに格納することができる。具体的には、ＤＯＭが、ＴＡＢＬＥ、ＰＲＥ、ＸＭＰ、ＬＩＳＴＩＮＧおよびＰＬＡＩＮＴＥＸＴオブジェクトについて走査され、これらのすべてが表データを格納することができる。これらのオブジェクトのうちの最初のものに出会ったとき、Ｗｅｂページにおけるオブジェクトの位置が示される。テキスト、グラフィカルファイル、ビデオファイルなど、表データを含まない任意のオブジェクトはパスされる。しかし、これらのオブジェクトを表データ中にネストすることができる。したがって、非表データが表データ内に埋め込まれる場合では、非表データをＷｅｂクエリにインポートすることができる。
【００５５】
次に、ステップ７１０の後にステップ７１５が続き、ＴＡＢＬＥオブジェクトの水平および垂直の寸法が所定の値よりも大きいかどうかの判定がなされる。表データを保持するほかにも、ＴＡＢＬＥオブジェクトをＷｅｂページレイアウト内でプレースホルダまたはスペーサとして使用することができる。これらのＴＡＢＬＥオブジェクトをユーザへ、表計算プログラムにインポートすることができる表データのインスタンスとして指示することは、Ｗｅｂクエリの作成を簡素化するよりもむしろ複雑にする。ＴＡＢＬＥオブジェクトの垂直または水平の寸法が事前定義された値よりも小さかった場合、表データを含むオブジェクトがプレースホルダとして使用中であるという仮定が行われる。したがって、スペースとして使用されるこれらのＴＡＢＬＥオブジェクトは、Ｗｅｂクエリとしてインポートすることができる可能なオブジェクトとしてみなされない。例示的実施形態では、事前定義された値が、ＴＡＢＬＥオブジェクトの水平および垂直の寸法について８画素である。８画素がしきい値として選択されたが、これは、Ｗｅｂページ上で表示することができる最小テキストサイズが典型的には８画素であるからである。したがって、幅または高さが８画素より小さいいかなるオブジェクトも、スペーサである可能性が高い。８画素がしきい値として設定されるが、本発明の範囲を変更することなく、いかなる数の画素も、ＴＡＢＬＥタグが単にスペーサであるかどうかを判定するためのしきい値として選択できることは、当業者には理解されよう。
【００５６】
水平および垂直の寸法が、事前定義された値よりも大きいという判定がなされた場合、「ＹＥＳ」分岐の後にステップ７２０が続き、ＤＯＭにおける表データオブジェクトおよびその位置がキャッシュメモリの場所に格納される。
【００５７】
次に、ステップ７２０の後にステップ７２５が続き、ＤＯＭにおける最後の表データオブジェクトが検索されたかどうかの判定がなされる。最後の表データオブジェクトがＤＯＭから検索された場合、「ＹＥＳ」分岐の後にステップ７３０が続き、キャッシュメモリに格納され、配置された最初の表データが、キャッシュメモリから検索される。
【００５８】
次いで、ステップ７３０の後にステップ７３５が続き、アイコンが生成され、表データに関連付けられる。アイコンは、それらをユーザが見やすくするための、少なくとも１つの視覚的属性を有する。たとえば、視覚的属性を、色、テキスト文字、特殊文字、グラフィカルオブジェクトなどにすることができる、例示的実施形態では、各アイコンが、黒い枠付きの黄色のボックス内に含まれた右向きの矢印からなる。アイコンが作成された後、これらがＨＴＭＬ文書における最上層に配置されて、これらが常にユーザに対して可視であることが保証される。具体的には、ｚＩｎｄｅｘ値が、ＨＴＭＬ文書におけるあらゆるオブジェクトに関連付けられ、オブジェクトがＨＴＭＬ文書のどの層に現れるかを指示するものであり、これが「ｍａｘｉｎｔ」として定義された最大値に設定される。ｚＩｎｄｅｘ値を最大値「ｍａｘｉｎｔ」に設定することにより、アイコンをＨＴＭＬ文書の最上層に配置する。したがって、アイコンが常に、Ｗｅｂクエリダイアログボックス内でユーザに対して可視となる。
【００５９】
ステップ７３５の後にステップ７４０が続き、表データを含む各オブジェクトの絶対位置が計算される。典型的には、ＨＴＭＬ文書におけるオブジェクトが親子階層関係によって定義され、子オブジェクトの位置が親オブジェクトに相対的なオフセット値として与えられる。各親オブジェクトは、ＨＴＭＬ文書の＜ＢＯＤＹ＞タグに相対的なオフセット値によって定義される。しかし、親オブジェクトが同時に子オブジェクトでもある可能性があることに留意されたい。これらの場合では、親オブジェクトでも子オブジェクトでもある表データオブジェクトの位置が、それ自体の親オブジェクトに相対的に計算される。親オブジェクトがそれ自体であり、子オブジェクトでなかったときのみ、その位置が＜ＢＯＤＹ＞タグからのオフセット値として与えられる。
【００６０】
次に、ステップ７４０の後にステップ７４５が続き、各アイコンが、表データを含む各オブジェクトに近接して位置付けられる。例示的実施形態では、アイコンが、表データを含む、対応するオブジェクトの左上隅に近接して配置される。しかし、本発明の範囲を変更することなく、アイコンを、上、下または横などに近接した、他の３つの隅のいずれか１つに近接するなど、オブジェクトに近接した他の場所に配置することができることは、当業者には理解されよう。アイコンをオブジェクトに近接して位置付けることにより、表データをユーザへ、より満足のいくユーザフレンドリーな方法で、Ｗｅｂクエリダイアログボックスにおいて表示されたＷｅｂページを混乱させることなく、提示する。
【００６１】
最後に、ステップ７４５の後にステップ７５０が続き、キャッシュメモリにおける最後のデータオブジェクトに達したかどうかについての判定がなされる。キャッシュメモリにおける最後の表データオブジェクトに達した場合、「ＹＥＳ」分岐の後に「終了」ステップが続く。しかし、Ｗｅｂページにおける最後の表オブジェクトに達していなかった場合、「ＮＯ」分岐の後にステップ７５５が続き、キャッシュメモリに格納された次の表データオブジェクトが検索される。次いで、ステップ７５５がステップ７３５にループバックし、表データオブジェクトに近接してアイコンを追加する処理が繰り返される。
【００６２】
ステップ７１５へ戻ると、ＴＡＢＬＥオブジェクトの水平または垂直の寸法が所定の値より小さいという判定がなされた場合、ＴＡＢＬＥオブジェクトが意味のあるデータを含んでいないことが判定され、「ＮＯ」分岐の後に直接ステップ７２５が続き、ＤＯＭにおける最後の表データオブジェクトに達したかどうかの判定がなされる。ＤＯＭにおける最後の表データオブジェクトに達した場合、「ＹＥＳ」分岐の後にステップ７３０が続き、アイコンを、キャッシュメモリに格納された表データの各インスタンスに関連付ける処理が開始される。しかし、ＤＯＭにおける表データの最後のインスタンスに達していなかったという判定がなされた場合、「ＮＯ」分岐の後にステップ７６０が続き、ＤＯＭにおける表データの次のインスタンスが検索され、アイコンをＷｅｂページに挿入する処理が繰り返される。
【００６３】
図９は、図７のルーチン７４０を例示する論理的流れ図であり、表データを含む各オブジェクトの絶対位置が計算される。ルーチン７４０はステップ８０５で開始し、表データを含むオブジェクトの左上隅の相対位置を定義する値がＤＯＭから検索される。典型的には、ＨＴＭＬ文書内で、オブジェクトが親子階層関係においてセットアップされる。階層関係における各親オブジェクトは、多数の子オブジェクトを有することができる。加えて、各子オブジェクト自体が親オブジェクトであり、多数の子オブジェクトを有する可能性がある。ＨＴＭＬ文書における一番上または最上の親オブジェクトが、＜ＢＯＤＹ＞要素である。＜ＢＯＤＹ＞要素の子である各オブジェクトの位置に、＜ＢＯＤＹ＞要素の絶対位置に相対的な値が与えられる。後続の各子要素の位置が、その親オブジェクトに相対的な値によって与えられる。すなわち、ＨＴＭＬ文書における各オブジェクトの位置が、その親に相対的なオフセットとして与えられる。Ｗｅｂクエリダイアログボックス内の表データの各インスタンスの位置が、Ｗｅｂクエリダイアログボックスのサイズに依存することに留意されたい。ダイアログボックスは一般にサイズを変更することができるので、ダイアログボックス内のオブジェクトの位置は、Ｗｅｂクエリダイアログボックスのサイズが変更されたときに変更することができる。したがって、Ｗｅｂクエリダイアログボックスのサイズが変更されるたびに、表データの各インスタンスの位置も再計算されなければならない。
【００６４】
ステップ８０５の後にステップ８１０が続き、子および親オブジェクトの間の相対位置が共に、対象のオブジェクトから開始して、ＨＴＭＬ文書の＜ＢＯＤＹ＞タグである最上の親オブジェクトまではるかにさかのぼって加算される。たとえば、表データが、＜ＢＯＤＹ＞タグの子オブジェクトである＜ＴＡＢＬＥ＞タグに含まれた場合、＜ＴＡＢＬＥ＞タグの位置が単にオフセット値によって与えられる。もう１つの例として、表データが、＜ＰＬＡＩＮＴＥＸＴ＞タグの子である＜ＴＡＢＬＥ＞タグに含まれ、＜ＰＬＡＩＮＴＥＸＴ＞タグそれ自体が＜ＢＯＤＹ＞タグの子であった場合、＜ＴＡＢＬＥ＞タグの位置が、＜ＴＡＢＬＥ＞タグのオフセット値および＜ＰＬＡＩＮＴＥＸＴ＞タグのオフセット値を加算することによって計算される。この方法において、表データを含むオブジェクトの絶対位置が計算される。最後に、ステップ８１０の後に「ＥＮＤ」ステップが続く。
【００６５】
図１０は、ルーチン６２０を例示する論理的流れ図であり、ユーザが、アプリケーションプログラムにインポートするための表データを含むオブジェクトを選択する。ルーチン６２０はステップ９０５で開始し、ユーザがカーソルを、表データのインスタンスに関連付けられたアイコンの１つの上に位置付けたかどうかについての判定がなされる。ユーザがカーソルをアイコンの１つの上に位置付けた場合、「ＹＥＳ」分岐の後にステップ９１０が続き、アイコンの視覚的属性が変更される。たとえば、例示的実施形態では、アイコンの視覚的属性は背景色であり、これは黄色に設定されている。しかし、カーソルがアイコンの上をさまよっているとき、これは「ｍｏｕｓｅｏｖｅｒ」イベントとしても知られており、背景色が黄色から緑色へ変化する。これにより、その特定のアイコンに関連付けられた表データを選択することができるという視覚的フィードバックを、ユーザに提供する。
【００６６】
ステップ９１０の後にステップ９１５が続き、ボックスが、表データを含むオブジェクトの上に配置される。ボックスは「ｂｌａｎｋ．ｇｉｆ」画像に格納されており、背景属性および枠属性を含む。枠属性が、システムの強調表示色の値に設定される。背景属性は、空または「透過」である。したがって、ボックスの下にあるいかなる表データまたはテキストも、表示上でユーザに対して可視である。ボックスがＷｅｂページにおける第３の層に配置され、これは、ボックスに関連付けられたｚＩｎｄｅｘを、可能とされた層の最大数に設定することによって行い、これは「ｍａｘｉｎｔ」から２を引いた値（ｍａｘｉｎｔ−２）によって与えられる。ボックスを、ＨＴＭＬ文書における最大層以下に配置することにより、強調表示画像が表示されたときに「ちらつき」が表示上で起こらないことが保証される。「ちらつき」は、強調表示された画像のｚＩｎｄｅｘ値がアイコンのｚＩｎｄｅｘ値よりも高かった場合に起こり、それがアイコンの上になり、かつアイコンに「ｍｏｕｓｅｏｖｅｒ」イベントを受けさせるようにし、交互にアイコンを覆い隠す。しかし、ｍｏｕｓｅｏｖｅｒイベントは、アイコンが覆い隠されたときに停止する。これが、強調表示された画像が消えることをトリガするが、そうなったとき、ｍｏｕｓｅｏｖｅｒイベントは、マウスが移動されなかったとしても再度発する。繰り返しｍｏｕｓｅｏｖｅｒイベントを発するこのサイクルが、「ちらつき」を引き起こすものである。
【００６７】
ステップ９１５の後にステップ９２０が続き、ユーザが表計算プログラムにインポートするためのオブジェクトを選択したかどうかについての判定が、「オンクリック（ｏｎ−ｃｌｉｃｋ）」イベントが表データのインスタンスの上で起こったかどうかを判定することによって行われる。「オンクリック」イベントが起こった場合、「ＹＥＳ」分岐の後にステップ９２５が続き、アイコンの視覚的属性が再度変更される。たとえば、「オンクリック」イベントが起こったとき、表データに関連付けられたアイコンが、右向きの矢印から、緑色の背景上のチェックマークに変化する。次に、ステップ９２５の後にステップ９３０が続き、表データを含むオブジェクトの背景属性が変更される。具体的には、オブジェクトの背景属性が、その元の色から、システムの強調表示色および白色からなる混合色へ変更される。オブジェクトの元の背景属性がメモリに格納され、ユーザが表データを含むオブジェクトを選択解除した場合、元の背景色を復元できるようにする。アイコンの視覚的属性および背景属性の変更により、ユーザに、表データが選択されており表計算プログラムにインポートされる準備ができたという、視覚的確認を提供する。
【００６８】
加えて、いくつかのＷｅｂページは、１ページ上に表示することができるものより多くの素材を含む。それに伴い、いくつかのＷｅｂページが多数のページまたはフレームを有する可能性がある。Ｗｅｂページが多数のフレームを含んだとき、すべてのフレームが表データについて走査され、これについてアイコンが作成され、これに関連付けられる。加えて、各フレームがそれ自体のウィンドウおよびＵＲＬを有し、ＷｅｂページのＵＲＬではなくフレームのＵＲＬを、Ｗｅｂクエリを作成するときに使用しなければならない。さらに、表データのインスタンスが先に別のフレーム上で選択されていた場合、その表データのインスタンスは、表データの新しいインスタンスが別のフレーム上で選択されたときに選択解除される。したがって、同じフレーム内の多数の表のみを、同時に選択してインポートすることができる。さらに、その後、ユーザが表データをリフレッシュしたとき、Ｗｅｂページ全体ではなく、選択された表データを含むフレームのみがＷｅｂクエリにロードされる。表データを単一のフレームからインポートすることは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムの制限であって、Ｗｅｂクエリダイアログのものではないことに留意されたい。それと反対に、Ｗｅｂクエリダイアログは、ユーザが表を多数のフレームから選択かつインポートできるようにすることができる。したがって、表を単一のフレームからインポートする制約は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムが、データを多数のフレームの間で転送できないことから起こる。
【００６９】
リフレッシュ可能なＷｅｂクエリ  
本発明はソフトウェアユーティリティにおいて実施することができ、これを「Ｗｅｂクエリスマートタグ」（ＷＱＳＴ）と称することができる。このユーティリティの一実施形態が、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２およびＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ  ５．０ソフトウェアプログラムに組み込まれる。ＷＱＳＴユーティリティにより、ユーザがより容易にリフレッシュ可能なＷｅｂクエリを作成することができる。「ソフトウェアユーティリティ」という用語は、典型的には、ソフトウェア機能、ルーチン、またはダイナミックリンクライブラリ（ＤＬＬ）を示し、これは、事前定義されたインタフェースのセットを介して他のソフトウェアモジュールによってアクセス可能な、独立したオブジェクトまたはモジュールとして構成される。しかし、本明細書の意味内の「ユーティリティ」を、コンピュータオペレーティングシステム、または、Ｗｅｂ開発アプリケーションプログラムなどのアプリケーションプログラムに組み込むこともできる。したがって、本発明は、本明細書において記載されたＷＱＳＴユーティリティの方法を実行する、いかなるタイプのソフトウェアモジュールまたはシステムをも包含し、ダイナミックリンクライブラリ（ＤＬＬ）など、特定のオブジェクト構成に限定されない。加えて、本発明を表計算プログラムに関連して記載するが、本発明が、ユーザが表データをＷｅｂページからインポートすることができる他のプログラム、専用のＷｅｂオーサリングツール、文書処理プログラム、プレゼンテーションプログラム、描画プログラムなどに適用可能であることは、当業者には理解されよう。
【００７０】
ＷＱＳＴユーティリティにより、ユーザが、いくつかの方法のうちの１つを使用して、リフレッシュ可能なＷｅｂクエリをＷｅｂブラウザプログラムから直接作成することができる。最初の方法は、「コピー−ペーストＷｅｂクエリ」方法として知られており、ユーザが、インターネットブラウザモジュールにおいて開かれたＷｅｂページにおいて表示された表データをコピーし、この表データを表計算アプリケーションへ、コピー−ペーストコマンドを呼び出すことによってインポートすることができる。もう１つの方法は「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」として知られており、これにより、ユーザが表データをＷｅｂページにおいて選択することができ、これは、カーソルがＷｅｂブラウザプログラムにおいて位置付けられてドロップダウンコンテキストメニューを表示する間に、右マウスボタンを押し下げることによって行う。コンテキストメニューは、ユーザに、表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへエクスポートするためのオプションを提供する。
【００７１】
最後の方法は「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」として知られており、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ  Ｗｅｂブラウザプログラムにあるオプションであり、選択されたとき、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動する。このオプションにアクセスするには、ユーザがＷｅｂページをＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ  Ｗｅｂブラウザプログラムにおいて開き、ツールバー上のドロップダウンメニューから「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」オプションを選択する。ＷｅｂページがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにより作成された場合、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを使用して、ファイルが開かれる。しかし、Ｗｅｂページが別のプログラムにより作成された場合、Ｗｅｂページ全体がＷｅｂクエリダイアログボックスにインポートされ、次いで、ユーザが表計算プログラムにインポートしたい表データを選択することができる。
【００７２】
典型的には、ユーザがＷｅｂページから表計算プログラムへコピーしたいデータのブロックは、本質において表である。これは、表計算プログラムが特に表データを操作するために設計されているという事実による。しかし、表計算プログラムは、テキストまたはグラフィックなど、他のタイプのデータを操作することができる。したがって、この適用例の目的では、ＷＱＳＴユーティリティを、表データの操作に関連して記載するが、本発明の範囲から逸脱することなく、リフレッシュ可能なＷｅｂクエリを、テキスト、グラフィックなど、他の形式のデータを使用して作成できることは、当業者には理解されよう。３つの各方法を、以下で詳細に論じる。
【００７３】
コピー−ペーストＷｅｂクエリ  
ＷＱＳＴユーティリティを使用してＷｅｂクエリを生成する最初の方法は、「コピー−ペーストＷｅｂクエリ」として知られているソフトウェアモジュールである。コピー−ペーストＷｅｂクエリモジュールは、ペースト回復オンオブジェクトユーザインタフェース（ＯＯＵＩ）上のオプション、または、「リフレッシュ可能なＷｅｂクエリの作成」と呼ばれるスマートタグを提示する。ペースト回復スマートタグはドロップダウンメニューであり、これは、ユーザが電子ファイル、すなわちＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークブックにペーストしたデータのブロックの隣に現れる。ユーザが、ペースト回復スマートタグを選択して、データをファイルにペーストすることができる方法のいくつかの異なる変形形態を表示することができる。たとえば、ユーザがデータをテキストまたはＨＴＭＬとしてペーストすることを選択することができ、アンドゥしてペーストスペシャル（Ｐａｓｔｅ  Ｓｐｅｃｉａｌ）コマンドを使用する必要はない。
【００７４】
コピー−ペーストＷｅｂクエリモジュールは、ユーザが、インターネットブラウザモジュールにおいて開かれたＷｅｂページからコピーするための表データを、マウスなどのポインティングデバイスを使用して選択し、ペーストコマンドをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて呼び出したとき、起動される。ユーザが表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにペーストした後、コピー−ペーストＷｅｂクエリモジュールが、ユーザによって選択された表データのデータフォーマットを検査して、これが事前定義されたデータフォーマット、具体的にはＣＦ＿ＨＴＭＬであるかどうかを判定する。ＣＦ＿ＨＴＭＬフォーマットは、データをアプリケーションの間で、クリップボードを介して転送するために使用されるデータフォーマットである。コピー−ペーストＷｅｂクエリモジュールはＣＦ＿ＨＴＭＬフォーマットを使用するが、アプリケーションの間のデータの転送を容易にする他のフォーマットを、本発明の範囲を変更することなく使用できることは、当業者には理解されよう。
【００７５】
これらの条件が満たされ、すなわち、ペーストコマンドが呼び出され、クリップボード上のデータのフォーマットがＣＦ＿ＨＴＭＬであった場合、コピー−ペーストＷｅｂクエリモジュールが使用可能にされる。コピー−ペーストＷｅｂクエリモジュールは最初に、表データに関連付けられたレジストリにおける第１の識別子タグが、スマートタグ上のリフレッシュ可能なＷｅｂクエリオプションを使用禁止にするための事前定義された値に設定されているかどうかを判定する。具体的には、レジストリキー「Ｈｋｅｙ＿Ｃｕｒｒｅｎｔ＿Ｕｓｅｒ＼Ｓｏｆｔｗａｒｅ＼Ｍｉｃｒｏｓｏｆｔ＼Ｏｆｆｉｃｅ＼１０．０＼Ｅｘｃｅｌ＼Ｏｐｔｉｏｎｓ＼ＤｉｓａｂｌｅＰａｓｔｅＡｓＷｅｂＱｕｅｒｙ」が検査されて、これが所定の値を含んでいるかどうかが判定される。レジストリキーがＷｅｂクエリを使用禁止にするための所定の値を含んでいた場合、リフレッシュ可能なＷｅｂクエリを作成するためのオプションは、ユーザに対してスマートタグ上で提示されず、表データが通常の方法でＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにペーストされる。
【００７６】
しかし、管理レジストリキーが使用禁止にされていない場合、コピー−ペーストＷｅｂクエリモジュールが、レジストリにおける第２の識別子タグがいくつかの事前定義された値のうちの１つに設定されているかどうかを判定する。具体的には、コピー−ペーストＷｅｂクエリが、表データを作成するために使用されたアプリケーションを識別するために使用される、表データに関連付けられたフラグが、いくつかの事前定義された値のうちの１つに設定されているかどうかを判定する。すなわち、コピー−ペーストＷｅｂクエリモジュールがＭＥＴＡタグを検査しており、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム、または、ＭＩＣＲＯＳＯＦＴ  ＷＯＲＤ、ＭＩＣＲＯＳＯＦＴ  ＰＵＢＬＩＳＨＥＲ、ＭＩＣＲＯＳＯＦＴ  ＡＣＣＥＳＳ、ＭＩＣＲＯＳＯＦＴ  ＰＯＷＥＲＰＯＩＮＴ、またはＭＩＣＲＯＳＯＦＴ  ＦＲＯＮＴＰＡＧＥプログラムなど、他のいずれかのＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰアプリケーションが、表データを作成するために使用されたかどうかを判定する。具体的には、コピー−ペーストＷｅｂクエリモジュールがＣＦ＿ＨＴＭＬのヘッダ内部の「ＰｒｏｇＩＤ」ＭＥＴＡタグを検査し、これはアプリケーションプログラムソースを指定したものである。このタグが使用可能にされた場合、これは、ＭＩＣＲＯＳＯＦＴＥＸＣＥＬ  ２００２表計算プログラムまたは別のＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰアプリケーションプログラムが、表データを作成するために使用されたことを示し、次いでそれは、通常の方法で、Ｗｅｂクエリを作成せずに、表計算プログラムにペーストされる。
【００７７】
しかし、コピー−ペーストＷｅｂクエリモジュールが、表データがＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰアプリケーションプログラムからコピーされなかったと判定した場合、コピー−ペーストＷｅｂクエリモジュールがなおもう１つの判定、すなわち、ＣＦ＿ＨＴＭＬ文書における表データに関連付けられたＳｏｕｒｃｅＵＲＬ文字列が、十分に形成されたＵＲＬを含むかどうかの判定を行う。つまり、コピー−ペーストＷｅｂクエリモジュールがＳｏｕｒｃｅＵＲＬ文字列を検査して、これが「ｈｔｔｐ：／／」、「ｈｔｔｐｓ：／／」、「ｆｔｐ：／／」、または「ｆｉｌｅ：／／」の値のうちの１つをＵＲＬの最初に含むかどうかを判定する。これらのＳｏｕｒｃｅＵＲＬ文字列のうちの１つが存在した場合、これは、表データが有効なＵＲＬに関連付けられていることを示し、これに後でアクセスして表データを更新することができる。ＳｏｕｒｃｅＵＲＬ文字列が十分に形成されていなかった場合、コピー−ペーストＷｅｂクエリモジュールが、リフレッシュ可能なＷｅｂクエリを作成するためのオプションをユーザに提示せず、表データが通常の方法で表計算プログラムにペーストされる。しかし、表データに関連付けられたＵＲＬが十分に形成された場合、コピー−ペーストＷｅｂクエリモジュールが表データを表計算プログラムにペーストし、リフレッシュ可能なＷｅｂクエリを作成するための「リフレッシュ可能なＷｅｂクエリの作成」オプションをペースト回復スマートタグ上に表示する。
【００７８】
ユーザがペースト回復スマートタグを開いた後、ユーザが「リフレッシュ可能なＷｅｂクエリの作成」オプションを選択することができる。Ｗｅｂクエリダイアログボックスは、「新しいＷｅｂクエリ」ダイアログボックスと呼ばれ、表計算プログラムにおいて開かれる。Ｗｅｂクエリダイアログボックスはインターネットブラウザモジュールを含み、これが、ＣＦ＿ＨＴＭＬにおいて指定された同じＳｏｕｒｃｅＵＲＬへ事前にナビゲートされる。次いで、ユーザが、表計算プログラムにインポートしたい同じ表データを再選択する。別法として、ユーザが、表データに関連付けられたアイコンを強調表示してインポートコマンドを呼び出すことによって、表データを再選択することができる。次いで、コピー−ペーストＷｅｂクエリモジュールが、Ｗｅｂページにおける表データと、スプレッドシートにペーストされた表データの間のリンクを作成する。このリンクにより、ユーザが、データメニューからリフレッシュコマンドを選択することによって、表計算プログラムにおける表データを自動的に更新することができる。
【００７９】
図１１から図１５は、コピー−ペーストＷｅｂクエリモジュールを使用してＷｅｂクエリを作成する処理を例示する。
【００８０】
図１１は、表データを、ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００において表示されたＷｅｂページから選択した結果の例示である。ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００は、ドロップダウンメニューバー１００５、コマンドバー１０１０およびアドレスバー１０１５を含む。Ｗｅｂページの内容が閲覧領域１０２０において閲覧される。例示では、閲覧領域１０２０が表データ１０２５を含み、そのサブセット１０３０が、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにＷｅｂクエリとしてインポートされるために、ポインティングデバイス１０３５を使用して選択されている。本発明は、選択中の表データのサブセットのみを示すが、表データ１０２５全体を、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにペーストするために選択することもできることは、当業者には理解されよう。
【００８１】
図１２は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ１１００の例示であり、表データ１０２５のサブセット１０３０がＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにペーストされた後にどのように表示されるかを例示する。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ１１００は、ドロップダウンメニューバー１１０５および一連のコマンドバー１１１０、１１１５を含む。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートの内容が、閲覧領域１１２０において閲覧され、これは典型的には、表形式において配列されたいくつかのセルからなる。ウィンドウ１１００はポインティングデバイス１０３５（図１１）も含む。例示では、図１１において表示された表データ１０２５のサブセット１０３０が、ウィンドウ１１００の閲覧領域１１２０にペーストされた後が図示される。閲覧領域１１２０はドロップダウンメニューアイコンも含み、これはペースト回復スマートタグ１１２５として知られる。ペースト回復スマートタグ１１２５は、表データ１０２５のサブセット１０３０、または、表計算プログラムにペーストされる任意の他の表データにも近接して現れる。ペースト回復スマートタグ１１２５はドロップダウンメニューであり、これにより、ユーザが、データをファイルにペーストすることができる方法の、いくつかの異なる変形形態のうちの１つを選択することができる。たとえば、ユーザは、データをテキストまたはＨＴＭＬとしてペーストすることを選択することができ、アンドゥしてペーストスペシャルコマンドを呼び出す必要はない。表データのサブセット１０３０は、スマートタグ１１２５からペーストの変形形態の１つを使用してデータがペーストされるまで、「影付き」または「グレー表示」で表示される。
【００８２】
図１３は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおける画面表示の例示であり、ユーザがペースト回復スマートタグ１１２５を呼び出した結果を例示する。ペースト回復スマートタグ１１２５が呼び出されたとき、ペースト回復スマートタグドロップダウンメニュー１２００が現れ、ペーストコマンドの変形形態のリストを示す。たとえば、この例示では、ペースト回復スマートタグドロップダウンメニュー１２００が、「ソースフォーマットを保持」コマンド１２０５、「デスティネーションフォーマットと一致」コマンド１２１０、および「リフレッシュ可能なＷｅｂクエリの作成．．．」コマンド１２１５を示し、これはコピー−ペーストＷｅｂクエリモジュールによって追加されたものであり、これにより、ユーザがデータをＷｅｂページからインポートするときにＷｅｂクエリを作成することができる。
【００８３】
図１４は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおける画面表示の例示であり、ユーザがペースト回復スマートタグドロップダウン１１２５（図１２）において表示された「リフレッシュ可能なＷｅｂクエリの作成．．．」コマンド１２１５を選択した結果を例示する。コピー−ペーストＷｅｂクエリモジュールが、Ｗｅｂクエリダイアログボックス１３００を表計算プログラムウィンドウ１１００内で開く。Ｗｅｂクエリダイアログボックス１３００は、現在閲覧中のＷｅｂページのＵＲＬを表示するアドレスバー１３０５、および、先にインターネットブラウザウィンドウ１０００（図１１）において開かれたＷｅｂページの内容を表示する内容ウィンドウ１３１０を含む。内容ウィンドウ１３１０は、先に選択された表データ１０２５（図１１）を含む。Ｗｅｂクエリダイアログボックスは、いくつかのアイコン１３１５も含み、これらは、上述のように、ＷｅｂクエリによってＷｅｂページに挿入された表データに関連付けられている。ユーザが、表データに関連付けられたこれらのアイコンのうちの１つまたは複数を選択し、次いで、ポインティングデバイスを使用してインポートボタン１３２０を選択するか、あるいはキーボードを使用することによって、インポートコマンドを呼び出すことができる。これにより、リフレッシュ可能なＷｅｂクエリを、Ｗｅｂページにおける表データと、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートの内容ウィンドウ１１２０においてペーストされた表データ１０２０の間で作成する。
【００８４】
図１５はＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ１１００（図１２）における画面表示の例示であり、リフレッシュ可能なＷｅｂクエリを作成した結果を例示する。ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ１１００が、内容ウィンドウ１１２０（図１２）において表示されたセル内にインポートされた表データ１０３０（図１１）を示す。「外部データ」メニューボックス５０４（図５）が表データ１０３０に近接して表示され、「クエリの編集」ボタン５０６、「データ範囲プロパティ」ボタン５０８、「クエリパラメータ」ボタン５１０、「データのリフレッシュ」ボタン５１２、「リフレッシュの取り消し」ボタン５１４、「すべてのリフレッシュ」ボタン５１６、および「ステータスのリフレッシュ」ボタン５１８を含む。「データのリフレッシュ」ボタン５１２が選択されたとき、表データ１０３０が、表データを含むＷｅｂページにおいて起こったいかなる変化によっても自動的に更新される。
【００８５】
図１６および図１７は、コピー−ペーストＷｅｂクエリモジュールを表計算プログラムに適用するための技術を例示する論理的流れ図である。図１６および図１７は、ルーチン１５００を例示する論理的流れ図であり、これはコピー−ペーストＷｅｂクエリモジュールの動作を、リフレッシュ可能なＷｅｂクエリをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて作成するために適用するためのものである。図１６および図１７の論理的流れ図が処理装置２１（図１）によって、ＷＱＳＴユーティリティ１００に組み込まれた命令に応じて実行されることは、当業者には理解されよう。
【００８６】
ルーチン１５００はステップ１５０５で開始し、インターネットブラウザにおいて開かれたＷｅｂページから選択された表データが、表計算プログラムにペーストされる。しかし、ペーストコマンドが、表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートするために呼び出されたとき、データは一時記憶場所に配置され、これはクリップボードとして知られる。ペースト動作が完了した後、表データがクリップボードからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにおいてユーザによって選択された場所にコピーされる。表データは、ペーストコマンドの完了後にクリップボード上に残り、これにより、ユーザに、同じデータを多数回ペーストするためのオプションを可能とする。
【００８７】
ステップ１５０５の後にステップ１５１０が続き、コピー−ペーストＷｅｂクエリが、クリップボードにコピーされた表データがＣＦ＿ＨＴＭＬデータとしてフォーマットされるかどうかの判定を行う。ＣＦ＿ＨＴＭＬデータフォーマットは、典型的には、データをＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰアプリケーションの間で、クリップボードを介して転送するために使用される。コピー−ペーストＷｅｂクエリモジュールはＣＦ＿ＨＴＭＬフォーマットを使用するが、アプリケーションの間のデータの転送を容易にする他のフォーマットを、本発明の範囲を変更することなく使用できることは、当業者には理解されよう。表データがＣＦ＿ＨＴＭＬとしてフォーマットできないという判定がなされた場合、「ＮＯ」分岐の後に「終了」ステップが続く。
【００８８】
しかし、クリップボードにコピーされた表データがＣＦ＿ＨＴＭＬとしてフォーマットできるという判定がなされた場合、「ＹＥＳ」分岐の後にステップ１５１５が続く。ステップ１５１５で、表データに関連付けられたレジストリキー、すなわち、管理レジストリキーが使用禁止に設定されたかどうかの判定がなされる。管理レジストリキーが使用禁止に設定されている場合、「ＹＥＳ」分岐の後に「終了」ステップが続く。
【００８９】
他方では、管理レジストリキーが使用禁止に設定されていなかった場合、「ＮＯ」分岐の後にステップ１５２０が続き、表データが、ＭＩＣＲＯＳＯＦＴ  ＷＯＲＤ、ＭＩＣＲＯＳＯＦＴ  ＰＵＢＬＩＳＨＥＲ、ＭＩＣＲＯＳＯＦＴ  ＡＣＣＥＳＳ、ＭＩＣＲＯＳＯＦＴ  ＰＯＷＥＲＰＯＩＮＴ、またはＭＩＣＲＯＳＯＦＴ  ＦＲＯＮＴＰＡＧＥアプリケーションプログラムのような、ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰアプリケーションプログラム以外のアプリケーションプログラムによって作成されたかどうかの判定がなされる。具体的には、コピー−ペーストＷｅｂクエリモジュールが、ＣＦ＿ＨＴＭＬのヘッダ内部の「ＰｒｏｇＩＤ」ＭＥＴＡタグを検査し、これはアプリケーションプログラムソースを指定するものである。このフラグが使用可能にされている場合、これは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラム、または、別のＭＩＣＲＯＳＯＦＴＯＦＦＩＣＥ  ＸＰアプリケーションプログラム（すなわち、ＭＩＣＲＯＳＯＦＴ  ＷＯＲＤ、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２、ＭＩＣＲＯＳＯＦＴ  ＰＯＷＥＲＰＯＩＮＴ、ＭＩＣＲＯＳＯＦＴ  ＡＣＣＥＳＳ、またはＭＩＣＲＯＳＯＦＴ  ＰＵＢＬＩＳＨＥＲプログラム）が表データを作成したことを示し、「ＹＥＳ」分岐の後に「終了」ステップが続く。
【００９０】
しかし、識別タグが、表データが非ＭＩＣＲＯＳＯＦＴ  ＯＦＦＩＣＥ  ＸＰアプリケーションプログラムによって作成されたことを示した場合、「ＮＯ」分岐の後にステップ１５２５が続き、コピー−ペーストＷｅｂクエリモジュールが、表データに関連付けられたＵＲＬが十分に形成されているか、あるいは所定の接頭辞を含むかどうかを判定する。つまり、コピー−ペーストＷｅｂクエリモジュールが、表データに関連付けられたＵＲＬの開始部分のＳｏｕｒｃｅＵＲＬ文字列が、「ｈｔｔｐ：／／」、「ｈｔｔｐｓ：／／」、「ｆｔｐ：／／」または「ｆｉｌｅ：／／」の値をＵＲＬの開始部分に含むかどうかを判定する。これにより、表データが、後でアクセスして表データを更新することができる、有効なＵＲＬに関連付けられることを保証する。ソースＵＲＬが十分に形成されていなかった場合、「ＮＯ」分岐の後に「終了」ステップが続く。ソースＵＲＬが十分に形成されていなかった場合、後にデータをリフレッシュしようとするいかなる試みも成功しないようになり、これは、正確なＵＲＬにアクセス可能とならないからである。したがって、ユーザが潜在的に挫折感を引き起こす状況に入ることを可能とする代りに、ＷＱＳＴユーティリティがデータを通常の方法でインポートする。
【００９１】
しかし、表データに関連付けられたＵＲＬが十分に形成されていた場合、コピー−ペーストＷｅｂクエリモジュールが「ＹＥＳ」分岐からステップ１５３０に続く。ステップ１５３０で、コピー−ペーストＷｅｂクエリモジュールが、「リフレッシュ可能なＷｅｂクエリの作成」オプションをペースト回復スマートタグ上に表示し、これにより、ユーザがデータを通常の方法でコピーかつペーストすることができるが、Ｗｅｂクエリメニューを開くこともできる。
【００９２】
ステップ１５３０の後にステップ１５３５が続き、ユーザが、リフレッシュ可能なＷｅｂクエリオプションをペースト回復スマートタグから選択したかどうかについての判定がなされる。ユーザがリフレッシュ可能なＷｅｂクエリオプションをペースト回復スマートタグから選択しなかった場合、「ＮＯ」分岐の後に「終了」ステップが続く。しかし、ユーザがリフレッシュ可能なＷｅｂクエリオプションを選択したという判定がなされた場合、「ＹＥＳ」分岐の後にステップ１５４０が続き、コピー−ペーストＷｅｂクエリモジュールがＷｅｂクエリダイアログボックスを表計算アプリケーションにおいて開き、現在インターネットブラウザモジュールにおいて開かれているＷｅｂページのＵＲＬをプレロードし、これは表データがコピーされた元である。ステップ１５４０の後にステップ１５４５が続き、ユーザが、リフレッシュ可能なＷｅｂクエリを作成するために、表計算プログラムにおいてペーストされた表データの同じ、異なる、あるいは多数のインスタンスを選択する。
【００９３】
ステップ１５４５の後にステップ１５５０が続き、コピー−ペーストＷｅｂクエリモジュールがリフレッシュ可能なＷｅｂクエリを作成する。リフレッシュ可能なＷｅｂクエリを作成するには、ユーザが最初に表データをＷｅｂクエリダイアログボックスから選択し、事前定義されたボタンを選択する。ユーザが、事前定義されたボタンを選択したとき、コピー−ペーストＷｅｂクエリモジュールが表データを、表計算プログラムにおいて元のペーストと同じ箇所にペーストする。コピー−ペーストＷｅｂクエリモジュールが同時に、表計算プログラムにおいてペーストされた表データと、インターネットブラウザモジュールにおける表データの間でリンクを作成する。最後に、ステップ１５５０の後に「終了」ステップが続く。
【００９４】
図１８は、図１６、１７におけるルーチン１５５０を例示する論理的流れ図であり、リフレッシュ可能なＷｅｂクエリを作成するものである。ルーチン１５５０は、図１６、１７におけるステップ１５２０の後に開始し、ステップ１６０５で開始し、Ｗｅｂページ上の表データの単一のインスタンスが選択されたかどうかの判定がなされる。単一の表が選択された場合、「ＹＥＳ」分岐の後にステップ１６１０が続き、リダイレクションタグがインターネットブラウザモジュールにおける表データに関連付けられているかどうかの判定がなされる。リダイレクションタグは、２０００年７月２１日出願の「Ｍｅｔｈｏｄ  Ｆｏｒ  Ｒｅｄｉｒｅｃｔｉｎｇ  ｔｈｅ  Ｓｏｕｒｃｅ  ｏｆ  ａ  Ｄａｔａ  Ｏｂｊｅｃｔ  Ｄｉｓｐｌａｙｅｄ  ｉｎ  ａｎ  ＨＴＭＬ  Ｄｏｃｕｍｅｎｔ」という名称の米国特許出願第６０／２２０，２３６号において十分に記載されており、参照により本明細書に組み込む。
【００９５】
リダイレクションタグが表データに関連付けられていた場合、「ＹＥＳ」分岐の後にステップ１６１５が続き、コピー−ペーストＷｅｂクエリモジュールが、リダイレクションタグを、表計算プログラムにおいてペーストされた表データに関連付ける。次いで、ステップ１６１５の後に「終了」ステップが続く。しかし、表データに関連付けられたリダイレクションタグがなかった場合、「ＮＯ」分岐の後にステップ１６２０が続く。
【００９６】
ステップ１６２０で、コピー−ペーストＷｅｂクエリモジュールが、表データ識別子が表データに関連付けられているかどうかを判定する。典型的には、ＨＴＭＬフォーマットのファイル（ＣＦ＿ＨＴＭＬを含む）に含まれた表データに表データ識別子が割り当てられ、これがファイル内で他の表データに相対的なその場所を識別する。表データ識別子により、他のプログラムまたはプログラマが、特定の表データを高速かつ容易にアクセスあるいは編集することができる。しかし、表データ識別子を変更あるいは削除することができるいくつかの場合がある。たとえば、表データがファイルに挿入されたとき、新たに挿入された表データの下にある表データの表データ識別子が１だけ増分される。したがって、コピー−ペーストＷｅｂクエリモジュールが、インターネットアプリケーションモジュールからコピーされた表データを見て、表データ識別子がこの表データに関連付けられているかどうかを判定する。表データ識別子がこの表データに関連付けられていた場合、「ＹＥＳ」分岐の後にステップ１６２５が続き、表データ識別子が、表計算プログラムにおいてペーストされた表データに関連付けられる。次いで、ステップ１６２５の後に「終了」ステップが続く。
【００９７】
しかし、表データ識別子が表データに関連付けられていないという判定がなされた場合、「ＮＯ」分岐の後にステップ１６３０が続き、コピー−ペーストＷｅｂクエリモジュールが数値識別子を割り当て、これがインターネットブラウザモジュールからコピーされた表データに関連付けられる。ＨＴＭＬフォーマットのファイルでは、インデックス番号を、常に各オブジェクトについて計算することができる。インデックス番号は、オブジェクトがファイルにおいて現れる順序に対応する。これにより、インターネットブラウザモジュールが、オブジェクトを表示上の正しい位置に配置することができる。コピー−ペーストＷｅｂクエリモジュールがこのインデックス番号を使用して、ユーザがＷｅｂページからコピーした表データを識別し、これを、表計算プログラムにおいてペーストされた表データにリンクさせることができる。したがって、リダイレクションフラグも表データ番号もＷｅｂページにおける表データに関連付けられていなかった場合、コピー−ペーストＷｅｂクエリモジュールがインデックス番号を使用して、スプレッドシートにおいてペーストされた表データを、ブラウザモジュールにおける表データとリンクさせることができる。この方法において、ユーザが表計算プログラムにおける表データを更新することを望むたびに、コピー−ペーストＷｅｂクエリモジュールが単に、関連付けられたインデックス番号を検索し、対応するＵＲＬを開き、表データをＷｅｂページから検索する。次いで、ステップ１６３０の後に「終了」ステップが続く。
【００９８】
Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポートモジュール  
ＷＱＳＴユーティリティの第２の実施形態が、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールとして知られるソフトウェアモジュールにおいて埋め込まれる。Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポートモジュールにより、ユーザが、リフレッシュ可能なＷｅｂクエリをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ  Ｗｅｂブラウザプログラムから直接作成することができる。リフレッシュ可能なＷｅｂクエリを、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを使用して作成するには、ユーザが最初にカーソルを、マウスなどのポインティングデバイスを使用して、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムにおいて開かれたＷｅｂページからの表データの上に位置付ける。次に、ユーザが右マウスボタンを押し下げてコンテキストメニューを起動し、これはオプションのコマンドの「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」を含む。次いで、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンドを選択し、これが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールにＭＩＣＲＯＳＯＦＴＥＸＣＥＬ  ２００２表計算プログラムを起動させ、表データ識別子を使用してリフレッシュ可能なＷｅｂクエリを作成させる。
【００９９】
「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールは、ＶＢＳｃｒｉｐｔなど、スクリプトプログラミング言語で書かれており、典型的にはＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムの実行可能データファイルに存在する。このモジュールが実行可能ファイルに格納されており、意図的あるいは非意図的な、コードの改竄が防止される。しかし、このモジュールが、関数、ルーチンまたはＤＬＬなど、実行可能コードの外部に存在できることは、当業者には理解されよう。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを実施することができる、一例のＶＢＳｃｒｉｐｔを以下に示す。
【０１００】
0004972254.tif 000002
0004972254.tif 000003
0004972254.tif 000004
0004972254.tif 000005
【０１０１】
図１９は、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００（図１１）における画面表示の例示であり、「ＭｉｃｒｏｓｏｆｔＥｘｃｅｌへエクスポート」コマンドの呼び出しを例示する。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンドは、ユーザがマウスを使用してカーソル１０３５を表データ１０２５の上に配置し、右マウスボタンを押し下げることによって呼び出される。本発明を、マウスの右ボタンを押し下げることによって起動されるとして説明するが、トラックボール、スタイラス、およびキーボードなど、他のポインティングデバイス、または、多数のボタンをサポートする他のいかなるポインティングデバイスも、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを起動するために使用できることは、当業者には理解されよう。カーソル１０３５が表データの上に位置し、ユーザが右マウスボタンを押し下げたとき、コンテキストメニュー１７００がＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００内に現れる。コンテキストメニュー１７００は、ユーザがＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００の内容を編集できるコマンドを含む。具体的には、コンテキストメニュー１７００が、コマンド「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」１７０５を含む。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」１７０５コマンドが選択されたとき、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２を起動し、新しいワークシートを開き、表データをワークシートへリフレッシュ可能なＷｅｂクエリとしてペーストする。
【０１０２】
「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンド１７０５は、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲコンテキストメニュー１７００における標準コマンドではない。したがって、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンド１７０５は、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを使用する前に、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムに登録しなければならない。具体的には、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムのインストレーションのとき、以下のキーがレジストリに追加される。
【０１０３】
HKEY_CURRENT_USER＼Software＼Microsoft＼InternetExplorer＼MenuExt＼
Export to Microsoft Excel＼res://<path>/300 Contexts 0x1
【０１０４】
ただし、「＜ｐａｔｈ＞」はユーザのハードドライブ上で、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムがインストールされる場所を示す。
例示的実施形態では、＜ｐａｔｈ＞が、「ｃ：＼ｐｒｏｇｒａｍ  ｆｉｌｅｓ＼Ｍｉｃｒｏｓｏｆｔ  ｏｆｆｉｃｅ＼ｏｆｆｉｃｅ１０＼ｅｘｃｅｌ．ｅｘｅ」と指定され、これは、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムによってインストレーションのために使用されるデフォルトの場所である。
別法として、ユーザが＜ｐａｔｈ＞に、ハードドライブ上でＭＩＣＲＯＳＯＦＴＥＸＣＥＬ  ２００２表計算プログラムがインストールされる場所を示す、いかなる場所も指定することができる。
【０１０５】
例示的実施形態では、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンド１７０５をＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲブラウザプログラムに登録することが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムのインストレーション中に自動的に実行される。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンド１７０５の登録を、インストレーション処理中、あるいは、「インストールウィザード」の使用を介して、あるいはユーザが最初に「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンド１７０５を呼び出そうと試みたとき、オプションとしてユーザへ提示することもできる。
【０１０６】
図２０は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウにおける画面表示の例示であり、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを使用して作成されたリフレッシュ可能なＷｅｂクエリを例示する。この画面表示は、先に図１５において記載した画面表示に等しい。
【０１０７】
図２１は、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールを、インターネットブラウザアプリケーションプログラムへ適用するためのルーチン１９００を例示する、論理的流れ図である。ルーチン１９００はステップ１９０５で開始し、ユーザが、コンテキストメニューを起動するためのコマンドを入力する。ユーザは、カーソルをアクティブなウィンドウに配置して、コントロールキーを押し下げることによって、コンテキストメニューを起動する。典型的には、ユーザがマウスなどのポインティングデバイスを使用してカーソルを位置付け、（複数のマウスボタンを有するマウスでは）右マウスボタンを押し下げることによってコンテキストメニューを起動する。ユーザは、キーまたはキーの組み合わせをキーボード上で押し下げることによって、コンテキストメニューを起動することもできる。
【０１０８】
コンテキストメニューが起動された後、ステップ１９０５の後にステップ１９１０が続き、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールが、カーソルが画像、フォームコントロール、アンカー、またはＷｅｂページ内のいずれかのテキストの上に位置付けられたかどうかを判定する。コントロールキーが押し下げられたときに、カーソルがテキストの上に位置付けられていた場合、「ＹＥＳ」分岐の後に「終了」ステップが続き、これは、リフレッシュ可能なＷｅｂクエリを、これらのオブジェクトの１つを使用して生成することができないからである。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンドがコンテキストメニュー上に表示されず、これは、カーソルが表データ以外のオブジェクトの上に位置付けられたので、ユーザが表データをＷｅｂクエリにエクスポートすることを望まない、という仮定が行われるからである。
【０１０９】
しかし、カーソルが画像、フォームコントロール、アンカー、またはいずれかのテキストの上にないという判定がなされた場合、ユーザがオブジェクトをＷｅｂクエリにインポートすることを望む、という仮定が行われ、「ＮＯ」分岐の後にステップ１９１５が続く。ステップ１９１５で、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールが、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」するためのオプションをコンテキストメニュー上に表示する。次いで、ルーチン１９００がステップ１９２０へ進行し、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」オプションをコンテキストメニューから選択したかどうかについての判定がなされる。ユーザがこのオプションを選択した場合、「ＹＥＳ」分岐の後にステップ１９２５が続き、カーソルが表の上に位置付けられたかどうかの判定がなされる。典型的には、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールは、ユーザがエクスポートするために選択したオブジェクトを知るだけである。オブジェクトが表であったか、ある他のオブジェクトであったかを判定するため、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールがオブジェクトをＤＯＭ内に位置付け、ＤＯＭにおいて先行するあらゆる要素を検査する。ＤＯＭにおいて、＜ＢＯＤＹ＞タグに達する前に＜ＴＡＢＬＥ＞タグに出会った場合、ユーザがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムへエクスポートするために表を選択したという判定がなされる。この場合、「ＹＥＳ」分岐の後にステップ１９３０が続く。
【０１１０】
ステップ１９３０で、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動し、＜ＴＡＢＬＥ＞タグに関連付けられた表を、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ表計算プログラムにおける新しいワークシート内に開く。表がＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて開かれた後、データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにエクスポートするための手順が完了し、ステップ１９３０の後に「終了」ステップが続く。
【０１１１】
ステップ１９２５に戻ると、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」オプションをコンテキストメニューから選択したとき、カーソルを表データのインスタンスの上に位置付けていなかったという判定がなされた場合、「ＮＯ」分岐の後にステップ１９３５が続く。再度このステップで、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールが、ユーザがコンテキストメニューを呼び出したときにカーソルが上に位置付けられたオブジェクトをＤＯＭ内に位置付け、ＤＯＭにおいて先行する各要素を検査する。カーソルが表データのインスタンスの上に位置付けられなかったので、ＨＴＭＬ文書の＜ＢＯＤＹ＞タグに、いかなる＜ＴＡＢＬＥ＞タグに出会うよりも前に達する。
【０１１２】
ステップ１９３５で、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムが起動され、Ｗｅｂクエリダイアログボックスが開かれる。Ｗｅｂクエリダイアログボックスに、ユーザが自分のブラウザアプリケーションプログラムにおいて開いていたＷｅｂページのＵＲＬがプレロードされる。Ｗｅｂページ全体がＷｅｂクエリダイアログボックスにロードされ、これにより、ユーザがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートするためのオブジェクトを選択することができる。別法として、この時点で、ユーザが、Ｗｅｂページ全体をＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム内のＷｅｂクエリにエクスポートすることを選択することができる。ユーザがＷｅｂクエリを作成した後、この動作が完了し、ステップ１９３５の後に「終了」ステップが続く。
【０１１３】
ステップ１９２０へ戻ると、ステップ１９２０で、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」オプションをコンテキストメニューから選択しなかった場合、ユーザがデータをブラウザアプリケーションからＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへエクスポートすることによってＷｅｂクエリを作成することを望まなかったと仮定され、「ＮＯ」分岐の後に「終了」ステップが続く。
【０１１４】
同様に、ステップ１９１０で、ユーザがコンテキストメニューを起動したとき、カーソルが表データの上に位置付けられなかったと判定された場合、ユーザがデータをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへエクスポートすることを望まなかったと仮定され、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンドがコンテキストメニュー上に表示されず、「ＹＥＳ」分岐の後に「終了」ステップが続く。
【０１１５】
「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュール
ＷＱＳＴユーティリティの第３の実施形態は、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」として知られるソフトウェアモジュールにおいて埋め込むことができる。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールにより、ユーザがファイル全体を開くか、あるいはファイルの一部を選択して、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートして、内容を分析することができる。ユーザがＨＴＭＬ文書を編集すると決めたとき、典型的には、メニューバーの編集ドロップダウンメニューから編集コマンドを選択する。ドロップダウンメニューバーにより、文書が別のＷｅｂ開発プログラムにより作成された場合であっても、ユーザに、ＨＴＭＬ文書をＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ２００２表計算プログラムにおいて編集するためのオプションを可能とする。たとえば、表データのいくつかのインスタンスを含むＨＴＭＬ文書が、ＭＩＣＲＯＳＯＦＴ  ＷＯＲＤ文書処理プログラムなどの文書処理プログラムで作成されており、ユーザが表データの１つのインスタンスを編集することを望んだ場合、ユーザは、ＭＩＣＲＯＳＯＦＴ  ＷＯＲＤまたはＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２プログラムのいずれかを使用するためのオプションを有する。編集コマンドが呼び出された後、ユーザには、ＨＴＭＬ文書を作成するために使用されたＭＩＣＲＯＳＯＦＴ  ＷＯＲＤプログラムか、表データを編集するためのより堅牢なツールのセットを提供するＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２プログラムのいずれかを使用するための選択が与えられる。ユーザがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを使用して表データを編集することを選択した場合、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、ＨＴＭＬ文書がＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムによって作成されたか、別のＷｅｂ開発プログラムによって作成されたかを、ＨＴＭＬ文書に関連付けられた識別タグを検査することによって判定し、これは、どのプログラムを使用してＨＴＭＬ文書が作成されたかを識別するものである。具体的には、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、「Ｇｅｎｅｒａｔｏｒ」という名称のＨＴＭＬ文書のヘッダに含まれた「Ｇｅｎｅｒａｔｏｒ」ＭＥＴＡタグの値を検査する。このＭＥＴＡタグの値が、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを使用してＨＴＭＬ文書が作成されたことを示した場合、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを開き、自動的に表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートする。しかし、「Ｇｅｎｅｒａｔｏｒ」ＭＥＴＡタグが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム以外のＷｅｂ開発アプリケーションプログラムを使用してＨＴＭＬファイルが作成されたことを示した場合、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動し、新しいＷｅｂクエリダイアログボックスを開き、これにＨＴＭＬ文書のＵＲＬがプレロードされる。次いで、ユーザが、Ｗｅｂクエリにインポートするために、Ｗｅｂページ全体または表データの特定のインスタンスを選択することができる。
【０１１６】
効果的に動作するために、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、ＷｅｂブラウザプログラムおよびＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに統合される。Ｗｅｂブラウザプログラムにおけるドロップダウン編集コマンドは、永久的に「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」オプションを表示しなければならず、表計算プログラムは、「新しいＷｅｂクエリ？（Ｎｅｗ  Ｗｅｂ  Ｑｕｅｒｙ？）」という名称の新しいＤＤＥオペレーションをサポートしなければならず、これは、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンドによって呼び出されたとき、新しいＷｅｂクエリダイアログボックスを開き、ＨＴＭＬ文書のＵＲＬへ事前にナビゲートする。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールは、以下のキーをレジストリに追加して、新しいＤＤＥ機能をサポートする。
【０１１７】
0004972254.tif 000006
【０１１８】
図２２は、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００（図１１）における画面表示の例示であり、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンドを呼び出す結果を例示する。例示では、ＭＩＣＲＯＳＯＦＴ  ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウィンドウ１０００の閲覧領域１０２０が、表データ１０２５を含むＷｅｂページを含む。例示では、メニューバー１０１０から編集コマンドが選択されており、これによりドロップダウン編集メニュー２０００が表示されている。ドロップダウン編集メニュー２０００は、Ｗｅｂページを編集するためのいくつかのコマンドを含む。具体的には、ドロップダウン編集メニュー２０００が「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンド２００５、「Ｍｉｃｒｏｓｏｆｔ  ＦｒｏｎｔＰａｇｅで編集（Ｅｄｉｔ  ｗｉｔｈ  Ｍｉｃｒｏｓｏｆｔ  ＦｒｏｎｔＰａｇｅ）」コマンド２０１０、「Ｗｉｎｄｏｗｓ(登録商標)  Ｎｏｔｅｐａｄで編集（Ｅｄｉｔ  ｗｉｔｈ  Ｗｉｎｄｏｗｓ(登録商標)  Ｎｏｔｅｐａｄ）」コマンド２０１５、および「Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄで編集（Ｅｄｉｔ  ｗｉｔｈ  Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ）」コマンド２０２０を含む。典型的には、編集メニューの下で、表示されるコマンドは「アプリケーションプログラムで編集（Ｅｄｉｔｗｉｔｈ  ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍ）」となり、アプリケーションプログラムは、Ｗｅｂページを作成あるいは修正するために使用することができるアプリケーションプログラムの名前となる。
【０１１９】
図２３は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ウィンドウ１１００（図１２）における画面表示の例示であり、ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンド２００５オプションをドロップダウン編集メニュー２０００（図２２）から選択した結果を示す。例示では、新しいＷｅｂクエリダイアログボックスが開かれ、ＷｅｂサイトのＵＲＬがアドレスバーにプレロードされる。この時点で、ユーザが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートにインポートするために、Ｗｅｂページ全体または表データの個々のインスタンスを選択することができる。
【０１２０】
図２４は、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおける画面表示の例示であり、リフレッシュ可能なＷｅｂクエリを、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールを使用して作成した結果を示す。この画面表示は、図１５において前述した画面表示に等しい。
【０１２１】
図２５は、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールをインターネットブラウザアプリケーションプログラムに適用するためのルーチン２３００を例示する論理的流れ図である。ルーチン２３００はステップ２３０５で開始し、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、表計算プログラムを使用してＨＴＭＬ文書を編集するためのユーザコマンドを受信する。次いで、ルーチン２３００がステップ２３１０へ進行し、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、ユーザが編集したいＨＴＭＬ文書が表計算プログラムにより作成されたかどうかを判定する。「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、識別タグをＨＴＭＬ文書の先頭のセクションから検索し、これが、ＨＴＭＬ文書を作成するために使用されたアプリケーションプログラムを識別する。具体的には、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールが、ＭＥＴＡタグを先頭のセクションから検索し、これが、ファイルを作成するために使用されたアプリケーションプログラムを識別する。ＭＥＴＡタグが、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを使用してＨＴＭＬ文書が作成されたことを示す値を有した場合、「ＹＥＳ」分岐の後にステップ２３１５が続き、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動し、ＨＴＭＬ文書をＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートに直接インポートする。次いで、ステップ２３１５の後に「終了」ステップが続く。
【０１２２】
しかし、文書処理プログラムなど、別のアプリケーションプログラムを使用してＨＴＭＬ文書が作成された場合、リフレッシュ可能なＷｅｂクエリを自動的に作成することができない。ステップ２３１０から「ＮＯ」分岐の後にステップ２３２０が続き、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールがＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムを起動し、新しいＷｅｂクエリダイアログボックスを開く。Ｗｅｂクエリダイアログボックスに、ユーザが表データを選択した元のＨＴＭＬ文書のＵＲＬがプレロードされる。次いで、ユーザが表データを再選択し、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにインポートする。
【０１２３】
このように、本発明は、ユーザがリフレッシュ可能なＷｅｂクエリを作成するためのいかなる事前の知識も有する必要がなく、容易にリフレッシュ可能なＷｅｂクエリを作成するための、インターネットブラウザモジュールと表計算プログラム間の、統合された方法を提供する。
【０１２４】
前述のものが本発明の例示的実施形態にのみ関係し、多数の変更を、本発明の趣旨および範囲から逸脱することなく、本明細書に記載された実施形態に行うことができることを理解されたい。
【図面の簡単な説明】
【図１】本発明の一実施形態のための動作環境を提供するパーソナルコンピュータのブロック図である。
【図２】ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラム、Ｗｅｂブラウザコントロール、およびＷｅｂブラウザコンポーネントの間の相互依存関係を例示するダイアログボックスのブロック図である。
【図３】ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムウィンドウにおけるＷｅｂクエリダイアログボックスの画面表示の図である。
【図４】ユーザがカーソルを、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートへインポートするための表データに関連付けられたアイコンの上に位置付けた後の、Ｗｅｂクエリダイアログボックスの画面表示の図である。
【図５】表データをＷｅｂページからインポートした後の、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムワークシートの画面表示の図である。
【図６】新しいＷｅｂクエリを作成するか、既存のＷｅｂクエリを編集するかを判定するための、例示的技術を説明する論理的流れ図である。
【図７】ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへＷｅｂクエリとしてインポートするための表データを、Ｗｅｂページからグラフィカルに選択するための例示的技術を説明する論理的流れ図である。
【図８】ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムへＷｅｂクエリとしてインポートするための表データを、Ｗｅｂページからグラフィカルに選択するための例示的技術を説明する論理的流れ図である。
【図９】Ｗｅｂクエリを作成するためのＷｅｂページ上の表データの、絶対位置を計算するための、例示的技術を説明する論理的流れ図である。
【図１０】Ｗｅｂクエリを作成するための表データのインスタンスをグラフィカルに選択するための、例示的技術を説明する論理的流れ図である。
【図１１】インターネットブラウザモジュールにおいて開かれたＷｅｂページにおける、表データの選択を説明する画面表示の図である。
【図１２】Ｗｅｂページにおいて選択された、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムワークシートにペースト中である表データの画面表示の図である。
【図１３】ドロップダウンメニューにおいてユーザに表示された、Ｗｅｂクエリを作成するためのオプションを説明する画面表示の図である。
【図１４】ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおいて開かれたＷｅｂクエリダイアログボックスの画面表示であり、選択された表データを含むＷｅｂページを説明する図である。
【図１５】データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートへ、リフレッシュ可能なＷｅｂクエリとしてインポートした結果を説明する画面表示の図である。
【図１６】リフレッシュ可能なＷｅｂクエリ（Ｒｅｆｒｅｓｈａｂｌｅ  Ｗｅｂ  Ｑｕｅｒｙ）ユーティリティをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに適用するための、コピー−ペーストＷｅｂクエリモジュールの例示的技術を説明する論理的流れ図である。
【図１７】リフレッシュ可能なＷｅｂクエリユーティリティをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに適用するための、コピー−ペーストＷｅｂクエリモジュールの例示的技術を説明する論理的流れ図である。
【図１８】リフレッシュ可能なＷｅｂクエリを作成するための例示的技術を説明する論理的流れ図である。
【図１９】インターネットブラウザモジュールにおいて開かれたＷｅｂページにおける表データのための、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」コマンドの選択のスクリーンショットを説明する画面表示の図である。
【図２０】リフレッシュ可能なＷｅｂクエリユーティリティの「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールが、表データをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２ワークシートに挿入することを完了した後の、スクリーンショットを説明する画面表示の図である。
【図２１】リフレッシュ可能なＷｅｂクエリユーティリティを表計算プログラムに適用するための、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌへエクスポート」モジュールの例示的技術を説明する論理的流れ図である。
【図２２】「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンドを、インターネットブラウザモジュールにおけるドロップダウン編集メニューから使用した、リフレッシュ可能なＷｅｂクエリの作成の画面表示の図である。
【図２３】ユーザが「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」コマンドを選択した結果を説明する、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２スプレッドシートの画面表示の図である。
【図２４】リフレッシュ可能なＷｅｂクエリを、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールを使用して作成した結果を示す、ＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムにおける画面表示の例示の図である。
【図２５】リフレッシュ可能なＷｅｂクエリユーティリティをＭＩＣＲＯＳＯＦＴ  ＥＸＣＥＬ  ２００２表計算プログラムに適用するための、「Ｍｉｃｒｏｓｏｆｔ  Ｅｘｃｅｌで編集」モジュールの例示的技術を説明する論理的流れ図である。
【符号の説明】
２１０、３２５、１０１５、１３０５  アドレスバー
３１５、１３１０、１１２０  内容ウィンドウ
１０００  インターネットブラウザウィンドウ
１０２０、１０２５、１０３０  表データ
１０３５  カーソル
１１００  表計算プログラムウィンドウ
１１２５  ペーストの回復スマートタグ
１２１５  リフレッシュ可能なＷｅｂクエリの作成．．．」コマンド
１３００  Ｗｅｂクエリダイアログボックス
１３１５  アイコン、インポートボタン
【図１】
0004972254.tif 000007
【図２】
0004972254.tif 000008
【図３】
0004972254.tif 000009
【図４】
0004972254.tif 000010
【図５】
0004972254.tif 000011
【図６】
0004972254.tif 000012
【図７】
0004972254.tif 000013
【図８】
0004972254.tif 000014
【図９】
0004972254.tif 000015
【図１０】
0004972254.tif 000016
【図１１】
0004972254.tif 000017
【図１２】
0004972254.tif 000018
【図１３】
0004972254.tif 000019
【図１４】
0004972254.tif 000020
【図１５】
0004972254.tif 000021
【図１６】
0004972254.tif 000022
【図１７】
0004972254.tif 000023
【図１８】
0004972254.tif 000024
【図１９】
0004972254.tif 000025
【図２０】
0004972254.tif 000026
【図２１】
0004972254.tif 000027
【図２２】
0004972254.tif 000028
【図２３】
0004972254.tif 000029
【図２４】
0004972254.tif 000030
【図２５】
0004972254.tif 000031