JP4972254B2 - リフレッシュ可能なWebクエリを作成するための統合された方法 - Google Patents

リフレッシュ可能なWebクエリを作成するための統合された方法 Download PDF

Info

Publication number
JP4972254B2
JP4972254B2 JP2001222247A JP2001222247A JP4972254B2 JP 4972254 B2 JP4972254 B2 JP 4972254B2 JP 2001222247 A JP2001222247 A JP 2001222247A JP 2001222247 A JP2001222247 A JP 2001222247A JP 4972254 B2 JP4972254 B2 JP 4972254B2
Authority
JP
Japan
Prior art keywords
web
user
data
microsoft excel
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2001222247A
Other languages
English (en)
Other versions
JP2002189595A5 (ja
JP2002189595A (ja
Inventor
チャールズ ゴーティエール マシュー
インバー ヤニフ
マレー タイソン
チェン ウェンタオ
バープロースカス アンディー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2002189595A publication Critical patent/JP2002189595A/ja
Publication of JP2002189595A5 publication Critical patent/JP2002189595A5/ja
Application granted granted Critical
Publication of JP4972254B2 publication Critical patent/JP4972254B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/177Editing, e.g. inserting or deleting of tables; using ruled lines
    • G06F40/18Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般にWebクエリの作成に関し、具体的には、表データを、WebページからMICROSOFT EXCEL 2002表計算プログラムへ、グラフィカルに選択かつインポートして、リフレッシュ可能なWebクエリを作成するための方法に関する。本発明はさらに、リフレッシュ可能なWebクエリをWebブラウザプログラムから直接生成することに関する。
【0002】
【従来の技術】
Webクエリは、MICROSOFT EXCEL表計算プログラムなど、表計算プログラム内のある範囲のセルまたは表データであり、この内容がWebページから導出される。Webクエリの内容は、関連付けられたWebページ上に格納された表データと同じ特性を有する。たとえば、Webページ上に表示された表データが、小数点以下2桁の実数としてフォーマットされた場合、Webクエリ内の内容も、小数点以下2桁の実数としてフォーマットされる。HTML文書からの内容が表計算プログラムにWebクエリとしてインポートされた後、ユーザが表データの内容を、事前定義されたコマンドを選択することによって更新することができる。これらの機能により、Webクエリは、内容を手動で、あるいは指定されたイベントの発生時にリフレッシュすることができる表を作成するための、大変強力なツールとなる。残念ながら、以前のバージョンのMICROSOFT EXCEL表計算プログラムでは、Webクエリを作成するための方法が煩わしく複雑であった。典型的には、ユーザが手動でテキストファイルを作成しなければならず、これはインターネットクエリ(「IQY」)ファイルとして知られており、特定の構造および情報を含むものである。IQYファイルは、MICROSOFT EXCEL表計算プログラムにWebクエリの作成方法を指令する特定の構造を含む、テキストファイルである。典型的には、IQYファイルは、Uniform Resource Locator(「URL」)、および、データのインポートおよびフォーマット方法を制御する他の特性などの情報を含む。しかし、IQYファイルを作成するには、ユーザが特定の情報を有することが必要であり、これは、HTML文書の構造、および、Webクエリにインポートしたいデータオブジェクトについてのオブジェクト識別番号など、データオブジェクトに関する。結果として、IQYファイルを作成するには、ユーザがあるレベルのプログラミング技能を有することが必要である。したがって、多数のユーザは、Webクエリ機能が複雑すぎて使用できないことを発見した。
【0003】
この問題の1つの解決法は、ワシントン州レドモンドのマイクロソフト株式会社が製造した「MICROSOFT EXCEL 2000」表計算プログラムに導入されたものであり、ダイアログボックスを作成して、ユーザがWebクエリを作成するための助けとすることであった。ダイアログボックスにより、ユーザが表データをWebページから、手動でIQYファイルを生成する必要なしにインポートできるようになった。ダイアログボックスを使用してWebクエリを作成するため、ユーザが、データが格納されたリモート位置のアドレスを入力し、これは、Webページのuniform resource locator(「URL」)などであり、ローカルネットワーク上に格納された表データまたはHTMLファイルを含むものであった。ユーザがデータの位置を識別した後、ユーザは3つの方法のうちの1つにおいて、データをインポートする必要があった。第1に、ユーザは、単にWebページまたはHTMLファイル全体をインポートすることができた。第2に、ユーザは、HTMLファイルに含まれた表データのすべてのインスタンスをインポートすることができた。最後に、ユーザは、表データの特定のインスタンスをインポートすることができた。Webページ全体または表データのすべてのインスタンスをインポートすることは、表データをインポートするためのもっとも容易な方法であるが、これらの方法は、ユーザが望まない結果を生成する。これは、Webページが典型的には、グラフィックス、バナー、広告など、ユーザが関心を有していない余計な情報を含むという事実による。したがって、表データの特定のインスタンスをインポートする方法が、ユーザが選択するもっとも一般的な方法である。しかし、表データの特定のインスタンスを選択してMICROSOFT EXCEL表計算プログラムにインポートするには、ユーザが、表データに関連付けられたHTML識別子を供給する必要があった。HTML識別子は、典型的には、表識別文字列、または、HTML文書内の表データの相対位置を提供するインデックス番号である。たとえば、表データがTABLEオブジェクトであった場合、これはHTML文書において以下のフォーマットを有する。すなわち、<TABLE ID=″識別文字列″>...データ...</TABLE>となる。ユーザは、手動で識別文字列を判定しなければならなかった。ユーザは、識別文字列を、HTMLのソースを見ることによって判定しなければならなかった。しかし、時として、識別文字列が提供されない可能性がある。したがって、これらの場合では、ユーザがインデックス番号を判定しなければならず、これは単にTABLEオブジェクトの順序数であり、HTML文書に現れたようなものである。ユーザがこのデータの供給を終了した後、Webクエリが作成され、この内容が、ユーザが指定したURLまたはHTMLファイルからインポートされた。ダイアログボックスの使用により、ユーザが手動でIQYファイルを生成する必要はなくなったが、ユーザはなお、Webクエリを作成するためにWebページの構造の詳細な知識を有していなければならなかった。平均的なユーザは、効果的にWebクエリを作成するための、HTMLファイル構造についての必要な知識を有していないので、平均的なユーザは単に、表データの特定のインスタンスへのWebクエリを作成することが大変困難であり、多くの回数に渡って挫折感を引き起こすものであることを発見した。典型的には、ユーザは、HTMLページ全体へのWebクエリを作成し、すべてのデータを、Webクエリのみに専用の新しい空のワークシートへ戻した。次いで、ユーザは、分析を実行したいデータからWebクエリワークシート上へ、ワークシートのリンクを作成する。これは多数のエラーに通じ、これは、Webクエリがリフレッシュされたとき、Webページ上のデータの場所が変更している可能性があるからである。たとえば、ユーザが、金融データを含むページ全体ヘのWebクエリを作成することを望み、関心のある特定の株式相場がセルD9に含まれていることを発見したと仮定する。次いで、ユーザは、Webクエリシート上のセルD9と、分析を実行した別のワークシートの間のリンクを作成する。しかし、ユーザがWebクエリをリフレッシュすると、Webページが、新しいバナー広告などの追加によって変化しており、株価相場がこのときWebクエリシートにおいてセルG11に格納されるようになった可能性がある。次いで、財務分析が、ユーザが予想したものとは異なる結果を返し、これは、分析がセルD9にリンクされ、Webクエリがリフレッシュされた後にここに不正確なデータが含まれていたからである。
【0004】
さらに、Webクエリを作成することは最も直観的な処理ではなく、したがって、平均的な者には困難である可能性がある。Webクエリを作成するには、ユーザがWebクエリダイアログボックスをMICROSOFT EXCEL表計算プログラムから開き、次いで、手動で、自分の表計算プログラムに挿入したい表データを含むWebサイトのURLを入力しなければならなかった。残念ながら、大抵のユーザは、自らがHTML文書における表データに表計算プログラムからアクセスできることさえ理解しなかった。むしろ、大抵のユーザは、典型的には、表計算プログラムを終了し、HTML文書またはWebページへ、MicrosoftのINTERNET EXPLORERブラウザプログラムなど、インターネットブラウザを介してアクセスした。次いで、ユーザはWebページにおいて表データを選択し、コピー−ペーストコマンドを呼び出して、表データをWebページからMICROSOFT EXCEL表計算プログラムへ転送した。これには、ユーザがWebブラウザプログラムとMICROSOFT EXCEL表計算プログラムの間で切り替えて、データを、ワークシートにおけるある範囲のセルにペーストすることが必要であった。
【0005】
たとえば、ユーザが株情報をインターネットサイトからMICROSOFT EXCELワークシートへダウンロードして、財務分析を実行することを望んだと仮定する。典型的には、ユーザが新しいMICROSOFT EXCELワークシートを作成し、次いで、新しいアクティブなウィンドウをWebブラウザプログラムにより開く。次に、ユーザが、所望の株情報を含むWebサイトをロードする。次いで、ユーザが株情報の表または表データを選択し、コピーコマンドを呼び出す。次に、ユーザが、MICROSOFT EXCEL表計算プログラムを含むウィンドウへ切り替えて、ワークシートにおいてデータを挿入する位置を選択し、ペーストコマンドを呼び出すことが必要となる。インポートされた表内の内容が静的であった場合、表データをインポートするコピー−ペースト方法が、完了となる。しかし、株情報は典型的には動的な性質であり、継続的に変化する。したがって、ユーザが自分の表データを更新するため、ユーザが継続的にコピー−ペースト方法を呼び出して、新しいデータをインポートしなければならなかった。
【0006】
残念ながら、表データをインポートするためのコピー−ペースト方法は、非効率的であり、時間がかかる。ユーザが表データをリフレッシュあるいは更新したいとき、コピーおよびペースト処理をいたるところで繰り返さなければならない。さらに、コピー−ペースト方法を、継続的に表データを更新するために使用することにより、エラーがデータに導入されることに通じる可能性がある。たとえば、ユーザが、Webページにおける誤った表を更新するために選択する可能性があり、あるいは、ある範囲の表データがインポートされる場合、ユーザが不注意により、データを更新するときに異なるサイズの範囲を選択する可能性がある。いずれの場合も、最初に選択されたデータとは異なるデータを更新するために選択することにより、ユーザの分析において多数のエラーに通じる可能性がある。これらの場合においてリフレッシュ可能なWebクエリを作成することにより、コピー−ペースト方法を使用して表データを更新する繰り返しがなくなり、ユーザが引き起こすエラーの発生が減少する。さらに、大抵のユーザは、Webクエリ機能が存在すること、あるいは、それにアクセスする方法に気付いていない。Webクエリ機能に気付いているユーザにとっては、Webクエリを作成する処理が複雑すぎて、いかなる定期的にもこの機能を使用することができない。
【0007】
【発明が解決しようとする課題】
したがって、当技術分野では、リフレッシュ可能なWebクエリを作成するための、より便利で「発見可能な」方法が一般に必要である。さらに、当技術分野では、ユーザがリフレッシュ可能なWebクエリを作成するオプションを発見するための、より便利で効率的な方法が必要である。さらになお、当技術分野では、MICROSOFT EXCEL表計算プログラムにおいてリフレッシュ可能なWebクエリを、Webブラウザプログラムから直接作成するための、より効率的で、統合された、論理的な方法が必要である。
【0008】
一般的に述べると、本発明は、Webクエリの作成を、平均的なユーザにとってより簡素かつより直観的にするための、上述の必要性に適合する。
【0009】
【課題を解決するための手段】
本発明は、Webクエリダイアログボックスの改良であり、これにより、ユーザが、「見えた通りのものを得ることができる」(「WYSIWYG」)技術を使用してグラフィカルにWebクエリを作成することができる。この改良は、ユーザが、Webページに表示された表データのインスタンスをグラフィカルに選択し、表データをMICROSOFT EXCEL 2002ワークシートへWebクエリとしてインポートすることができる方法である。この方法は、表データをワークシートにインポートするためのユーザコマンドが受信されるときに開始する。表データをインポートするためのコマンドを受信したとき、インターネットブラウザモジュールが、アプリケーションプログラムにおいて開かれたWebクエリダイアログボックス内で起動される。次いで、ユーザが、自分がインポートしたい表データを含むWebページのURLへナビゲートする。次に、表データを含むWebページがダイアログボックスにロードされる。次いで、ユーザが典型的には、表計算プログラムへWebクエリとしてインポートするための表データの少なくとも1つのインスタンスを、グラフィカルな方法を使用して選択する。次いで、ユーザはHTML構造についてのいかなる詳細な情報も供給することなく、表データがインポートされる。別法として、ユーザがいかなる表データも選択しない可能性があり、この場合は、Webページ全体が表計算プログラムへWebクエリとしてインポートされる。
【0010】
具体的には、本発明は、表データをWebページから選択し、表データを、別のWebページなどの別のファイルへ、あるいは、別のアプリケーションプログラムにインポートあるいはコピーするための、グラフィカルな方法を提供する。Webページがダイアログボックスにロードされた後、HTMLツリーが走査されて、HTMLファイル内に存在するすべての表データが識別される。出会った表データの各インスタンスについて、アイコンが作成され、表データのインスタンスと関連付けられる。たとえば、アイコンは典型的には、表データをポイントする黒い矢印を含む、黄色の背景からなるボックスからなる。これがユーザに、HTML文書内のどのオブジェクトが表データであるかについてのグラフィカルな指示を提供する。
【0011】
次に、表データの各インスタンスの絶対位置が計算される。次いで、各アイコンが、関連付けられた表データのインスタンスの絶対位置に近接して位置付けられる。最後に、アイコンがHTML文書の本文に、可能な最大値に設定された、関連付けられたzIndexと共に追加され、これがHTML文書における最上層に対応し、アイコンがWebページのもっとも上の層に表示されるようにする。これにより、アイコンが常にユーザに対して見えることが保証される。アイコンはユーザに、表計算プログラムにインポートすることができる、Webページに含まれた表データのすべての可能なインスタンスの、視覚的表現を提供する。
【0012】
アイコンがWebクエリダイアログボックスにおけるWebページ上に表示された後、ユーザがWebページ内の表データの少なくとも1つのインスタンスを選択したかどうかについての判定がなされる。ユーザがカーソルを、表データのインスタンスに関連付けられたアイコンの1つに配置したとき、これは「mouseover」イベントとしても知られており、ユーザにいくつかのグラフィカルなインジケータが提供される。最初に、アイコンの背景色を変更するなど、アイコンの視覚的な外観が変更される。次に、第2の視覚的インジケータが、表データの周囲のボックスなど、強調表示画像を描画することによってユーザに提供される。強調表示画像を描画するため、表データの寸法がHTML文書から検索され、表データの絶対位置と結合されて、強調表示画像が表データ上に正しく位置付けられる。次に、強調表示画像のアウトラインの色が所定の値に設定されて、表データが強調される。しかし、強調表示画像は「透過」GIF画像を含む。これにより、画像がその上に位置付けられている間に、ユーザがなお表データを見ることができることを保証する。これらのグラフィカルなインジケータは両方とも、「mouseover」イベントが起こる間は、ユーザに対して可視のままである。
【0013】
次に、ユーザが、表データの少なくとも1つのインスタンスを表計算プログラムにインポートすることを選択したかどうかについての判定がなされる。ユーザが表データを選択した場合、アイコンの可視インジケータおよび表データの各インスタンスのための背景色が変更される。最初に、アイコンの視覚的外観が再度変更される。たとえば、アイコンを最初に、黄色のボックスにおける黒い矢印にすることができる。「mouseover」イベントが発生したとき、アイコンの色が黄色から緑色へ変化することができる。ユーザが表データを、アイコンをクリックすることによって選択した場合、アイコン内の矢印をチェックマークに変更させることができ、あるいは、別法として、アイコンの色が緑色から青色へ変化することができる。加えて、表データの背景値が、その元の色から、システム色および白色を含む混合色へ変更される。表データの背景色を変更することによって、ユーザが容易に、自分が選択した表データのインスタンスを認識することができる。最後に、ユーザが表データをインポートしたとき、表識別文字列が記録され、これがHTML文書内の表データの各インスタンスの位置を指示する。しかし、表データに関連付けられた表識別文字列がなかった場合、表データに関連付けられたインデックス番号が計算され、記録される。最後に、表データのインスタンスに関連付けられたURLが、表識別文字列またはインデックス番号と共に、アプリケーションプログラム内のWebクエリに渡される。
【0014】
本発明は、HTML文書が多数のフレームを有するかどうかを判定し、HTML文書の特定のフレームに戻るWebクエリを作成することもできる。あるWeb設計者は、自分のWebページを多数のフレームに分割する。各フレームを、分離したウィンドウとみなすことができ、これがWebページを使用可能なデータの部分に分割し、各部分が単一のHTML文書を含む。このように、Web作者が多量のデータを、より意味のある有用な方法において提示することができる。
【0015】
Webページが多数のフレームを含むとき、各フレームが走査されて、表データの各インスタンスが判定される。次に、アイコンが作成され、各フレーム上の表データの各インスタンスに関連付けられる。しかし、各フレームがそれ自体のウィンドウおよびURLを有し、そのため、Webクエリを作成するとき、親フレームのURLではなくフレームのURLが使用されて、Webクエリが作成される。さらに、表データのインスタンスがフレームにおいて選択されたときは、先に別のフレームにおいて選択された表データのいかなるインスタンスも選択解除される。単一のフレーム内で選択された表データの多数のインスタンスのみを、表計算プログラムにインポートすることができる。Webクエリの作成を単一のフレームに制限することは、以前のバージョンのMICROSOFT EXCEL表計算プログラムの制限であり、本発明のものではない。
【0016】
加えて、本発明は、Webクエリスマートタグ(Web Query Smart Tag)(WQST)ユーティリティとして知られるソフトウェアユーティリティにおいて、Webクエリをユーザがより利用しやすくするための、上述の必要性に合う。WQSTユーティリティにより、ユーザがWebクエリを作成する処理を、いくつかの方法のうちの1つにおいて、インターネットブラウザモジュールから直接開始することができる。最初の方法は、「コピー−ペーストWebクエリ(Copy−Paste Web Query)」方法として知られており、ユーザが表データをWebページから表計算プログラムにペーストするときに開始する。ユーザが表データを表計算プログラムにペーストしたとき、リフレッシュ可能なWebクエリコマンドがユーザに提示されるべきであるかどうかの判定がなされる。Webクエリコマンドをユーザに提示するための判断が行われた場合、Webクエリを作成するためのオプションが専用のドロップダウンメニュー上に現れ、これはオンオブジェクトユーザインタフェース(on−object user interface)(「OOUI」)と呼ばれ、「スマートタグ」としても知られており、MICROSOFT EXCEL 2002表計算プログラムに関連している。スマートタグは、Webクエリが適切であるかどうかに関わらず、表データと共に現れる。このスマートタグは、MICROSOFT OFFICE XP−wideの「ペースト回復(Paste Recovery)」機能であり、2000年7月21日出願の「On−Object User Interface」という名称の米国特許出願第09/620,876号において全て開示されており、参照により本明細書に組み込む。
【0017】
ユーザが、Webクエリをスマートタグから作成するためのオプションを選択したとき、Webクエリダイアログボックスが開かれ、Webページ全体がWebクエリへ、クリップボード上の表データが開始した場所からロードされる。ユーザが、同じ表データを再選択し、これがこのときリフレッシュ可能なWebクエリを作成するためにダイアログボックスに表示される。
【0018】
具体的には、「コピー−ペーストWebクエリ」方法は、ユーザが表データをWebページからMICROSOFT EXCEL 2002ワークシートにペーストするステップを開始したとき、リフレッシュ可能なWebクエリを作成するためのオプションが、スマートタグにおいてユーザに表示されるべきであるかどうかを判定するための、発見的な手順を提供する。ユーザがデータをMICROSOFT EXCEL 2002表計算プログラムにペーストしたとき、表データが、「クリップボード」と呼ばれる一時記憶場所に格納される。「コピー−ペーストWebクエリ」方法は最初に、表データがコピーされた元のアプリケーションプログラムがCF_HTMLフォーマットのデータをサポートするかどうかを判定する。CF_HTMLは、典型的には、MICROSOFT OFFICE(MICROSOFT OFFICE XPおよび以前のバージョンのMICROSOFT OFFICE)スイート(suite)のアプリケーションプログラムによって使用される、データを2つのアプリケーションプログラムの間で、クリップボードを介して転送するためのデータフォーマットである。アプリケーションプログラムがCF_HTMLデータフォーマットをサポートしなかった場合、リフレッシュ可能なWebクエリを作成するためのオプションがユーザに提示されず、表データが表計算プログラムへ、通常の方法においてコピーされる。
【0019】
しかし、アプリケーションがCF_HTMLデータフォーマットをサポートした場合、「コピー−ペーストWebクエリ」方法が、表データに関連付けられた第1の識別子タグが、指定された値に設定されているかどうかを判定し、これは、表データを作成するために使用されたアプリケーションプログラムを識別するものである。第1の識別子タグが、指定された値に設定された場合、WQSTユーティリティが、インポートされる表データを含むWebサイトに関連付けられたURLを検索する。次に、URLが十分に形成されているかどうかの判定がなされる。つまり、URLが以下のテキスト文字列、すなわち、「http://」、「https://」、「ftp://」または「file://」のうちの1つを含むかどうかが判定される。URLが十分に形成されていた場合、リフレッシュ可能なWebクエリを作成するためのオプションが、ユーザにスマートタグ上で提示される。しかし、先行する判定ステップのいずれか1つが失敗した場合、リフレッシュ可能なWebクエリを作成するためのオプションが、ユーザにスマートタグ上で提示されない。
【0020】
WQSTユーティリティを、「Microsoft Excelへエクスポート」として知られる第2の方法において、埋め込むこともできる。「Microsoft Excelへエクスポート」モジュールにより、ユーザが、リフレッシュ可能なWebクエリを、MICROSOFT EXCEL 2002表計算プログラム内に、MICROSOFT INTERNET EXPLORERブラウザプログラムから直接作成することができる。「Microsoft Excelへエクスポート」モジュールを使用してリフレッシュ可能なWebクエリを作成するには、ユーザがカーソルを、MICROSOFT INTERNETEXPLORERブラウザプログラムにおいて開かれたWebページ中の表データのインスタンス上に位置付ける。次に、ユーザが右マウスボタンを押し下げることによって、コンテキストメニューを起動する。次いで、ユーザがコマンド「Microsoft Excelへエクスポート」をコンテキストメニューから選択し、これがMICROSOFT EXCEL 2002表計算プログラムを起動する。次いで、ユーザが「Microsoft Excelへエクスポート」を選択したときにカーソルが上に位置付けられた表データが、MICROSOFT EXCEL 2002ワークシートへ、リフレッシュ可能なWebクエリとしてインポートされる。
【0021】
WQSTユーティリティを、「Microsoft Excelで編集」として知られる第3のモジュールにおいて埋め込むこともできる。「Microsoft Excelで編集」モジュールにより、ユーザがファイル全体を開くか、あるいは、ファイルの一部を選択して、MICROSOFT EXCEL 2002表計算プログラムへ、リフレッシュ可能なWebクエリとしてインポートすることができる。HTML文書が、MICROSOFT EXCEL 2002表計算プログラムを使用して作成された場合、HTML文書が直接MICROSOFT EXCEL 2002表計算プログラムにロードされる。しかし、HTMLページが、MICROSOFT EXCEL 2002表計算プログラムを使用して作成されなかった場合、モジュールが新しいワークシートを作成し、自動的にWebクエリダイアログボックスを表示し、これにより、ユーザが、ページ全体または表データの個別インスタンスへのWebクエリを作成することができる。
【0022】
リフレッシュ可能なWebクエリの作成を開始するには、ユーザが最初に、MICROSOFT INTERNET EXPLORERブラウザプログラムにおいて所望のHTML文書へナビゲートする。次いで、ユーザが、MICROSOFT INTERNET EXPLORERブラウザプログラム内で、ドロップダウンの編集メニューをメニューバーから呼び出す。次いで、ユーザが「Microsoft Excelで編集」コマンドを選択する。次いで、「Microsoft Excelで編集」モジュールが、HTML文書がMICROSOFT EXCEL 2002表計算プログラムにより作成されたか、あるいは、別のWeb開発プログラムにより作成されたかを、HTML文書に関連付けられた識別タグを検査することによって判定する。識別タグは、どのWeb開発プログラムが使用されてHTML文書が作成されたかを指示する。識別子タグの値が、MICROSOFT EXCEL 2002表計算プログラムが使用されてその特定のHTML文書が作成されたことを指示した場合、「MicrosoftExcelで編集」モジュールが、MICROSOFT EXCEL 2002表計算プログラムを開き、HTML文書全体をMICROSOFT EXCEL 2002ワークブック内でロードする。
【0023】
しかし、識別子タグが、別のWeb開発アプリケーションプログラムが使用されてHTMLファイルが作成されたことを指示した場合、「MicrosoftExcelで編集」モジュールがMICROSOFT EXCEL 2002表計算プログラムを起動し、新しいワークブックを作成し、新しいWebクエリダイアログボックスを開き、これにHTML文書のURLがプレロードされる。次いで、ユーザが、Webクエリにインポートするために、Webページ全体か、または、表データの特定のインスタンスを選択することができる。
【0024】
本発明が、リフレッシュ可能なWebクエリを作成するための方法の欠点を改善し、上述の利点を果たすことは、例示的実施形態の以下の詳細な説明および添付の図面と、特許請求の範囲とから明らかになるであろう。
【0025】
【発明の実施の形態】
本発明は、ユーザーがオブジェクト(すなわち、表データ)をWebページからグラフィカルに選択し、これを表計算プログラムにインポートできるようにするための方法を対象とする。本発明の例示的実施形態は、「MICROSOFTEXCEL 2002」表計算プログラムにおいて実施され、これはワシントン州レドモンドのマイクロソフト株式会社が製造した表計算プログラムである。
【0026】
例示的実施形態を、一般に、パーソナルコンピュータ上で動作するプログラムおよびオペレーティングシステムに関連して記載するが、本発明を、他のタイプのコンピュータ用の他のプログラムモジュールと共に実施することもできることは、当業者には理解されよう。さらに、本発明を、スタンドアロンまたは分散コンピューティング環境において実施することができることは、当業者には理解されよう。分散コンピューティング環境では、プログラムモジュールを物理的に、異なるローカルかつリモートの記憶デバイスに位置付けることができる。プログラムモジュールの実行は、ローカルにスタンドアロンの方法で、あるいは、リモートでクライアント/サーバの方法で行われることができる。このような分散コンピューティング環境の例には、オフィスのローカルエリアネットワーク、企業全体のコンピュータネットワーク、および地球規模のインターネットが含まれる。
【0027】
ここで、図面では、いくつかの図中で同様の数値は同様の要素を表し、これを参照して、本発明の態様および例示的動作環境を説明する。
【0028】
例示的動作環境
図1および以下の解説は、本発明を実施することができる適切なデータコンピューティング環境の、簡単で一般的な説明を提供することを意図するものである。本発明を一般に、パーソナルコンピュータと共にオペレーティングシステム上で動作するアプリケーションプログラムに関連して説明するが、本発明を、他のプログラムモジュールと共に実施することもできることは、当業者には理解されよう。一般に、プログラムモジュールには、ルーチン、プログラム、コンポーネント、データ構造などが含まれ、これらが特定のタスクを実行し、あるいは特定の抽象データ型を実施する。さらに、本発明を他のコンピュータシステム構成により実施することができ、これらにはハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのあるいはプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータなどが含まれることは、当業者には理解されよう。本発明はまた、分散コンピューティング環境において実施することもでき、タスクがリモートの処理デバイスによって実行され、これらが通信ネットワークを介してリンクされる。分散コンピューティング環境では、プログラムモジュールをローカルかつリモートの記憶デバイスに位置付けることができる。
【0029】
図1を参照すると、本発明を実施するための例示的システムは、従来のパーソナルコンピュータ20を含み、これが、処理装置21、システムメモリ22、および、システムメモリを処理装置21に結合するシステムバス23を含む。システムメモリ22は読取り専用メモリ(ROM)24およびランダムアクセスメモリ(RAM)25を含む。基本入出力システム26(BIOS)は、スターとアップ中など、情報をパーソナルコンピュータ20内の要素の間で転送するための助けとなる基本ルーチンを含み、ROM24に格納される。パーソナルコンピュータ20はさらに、ハードディスクドライブ27、たとえば、リムーバルディスク29から読み取りあるいはこれに書き込むための磁気ディスクドライブ28、および、たとえば、CD−ROMディスク31から読み取るか、あるいは他の光媒体から読み取りあるいはこれに書き込むための光ディスクドライブ30を含む。ハードディスクドライブ27、磁気ディスクドライブ28、および光ディスクドライブ30が、システムバス23へ、それぞれハードディスクドライブインタフェース32、磁気ディスクドライブインタフェース33、および光ドライブインタフェース34によって接続される。ドライブおよびそれらの関連付けられたコンピュータ可読媒体が、パーソナルコンピュータ20用の不揮発性記憶装置を提供する。上のコンピュータ可読媒体の説明では、ハードディスク、取外し可能磁気ディスクおよびCD−ROMディスクを参照したが、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジなど、コンピュータにより可読である他のタイプの媒体も例示的動作環境において使用できることを、当業者には理解されたい。
【0030】
いくつかのプログラムモジュールをドライブおよびRAM25に格納することができ、これには、オペレーティングシステム35−1、35−2、WQST(Webクエリスマートタグ)ユーティリティ100などの1つまたは複数のアプリケーションプログラム36−1、36−2、他のプログラムモジュール37−1、37−2およびプログラムデータ38−1、38−2が含まれる。ユーザは、コマンドおよび情報をパーソナルコンピュータ20へ、キーボード40、および、マウス42などのポインティングデバイスを介して入力することができる。他の入力デバイス(不図示)には、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどを含んでもよい。これらおよび他の入力デバイスが、しばしば処理装置21へ、システムバスに結合されたシリアルポートインタフェース46を介して接続されるが、これを、ゲームポートまたはユニバーサルシリアルバス(USB)など、他のインタフェースによって接続することもできる。モニタ47または他のタイプの表示デバイスも、システムバス23へ、ビデオアダプタ48などのインタフェースを介して接続される。モニタに加えて、パーソナルコンピュータは典型的には、スピーカまたはプリンタなど、他の周辺出力デバイス(不図示)を含む。
【0031】
パーソナルコンピュータ20は、ネットワーク環境において、リモートコンピュータ49など、1つまたは複数のリモートコンピュータへの論理接続を使用して動作することができる。リモートコンピュータ49は、サーバ、ルータ、ピアデバイス、または他の共通ネットワークノードにすることができ、典型的には、パーソナルコンピュータ20に関して記載した要素の多数またはすべてを含むが、記憶デバイス50のみを図1に例示した。図1に示す論理接続は、ローカルエリアネットワーク(LAN)51および広域ネットワーク(WAN)52を含む。このようなネットワーキング環境は、オフィス、企業全体のコンピュータネットワーク、イントラネットおよびインターネットにおいて一般的である。
【0032】
LANネットワーキング環境において使用するとき、パーソナルコンピュータ20がLAN51へ、ネットワークインタフェース53を介して接続される。WANネットワーキング環境において使用するとき、パーソナルコンピュータ20が典型的にはモデム54、または、インターネットなどのWAN52を介して通信を確立するための他の手段を含む。モデム54は、内部あるいは外部にすることができ、システムバス23へ、シリアルポートインタフェース46を介して接続される。ネットワーク環境では、パーソナルコンピュータ20に関して示したプログラムモジュール、またはその一部を、リモート記憶デバイスに格納することができる。図示のネットワーク接続は例示的であり、通信リンクをコンピュータの間で確立する他の方法を使用することができることを理解されたい。
【0033】
本発明の例示的実施形態
Webクエリダイアログ
Webクエリダイアログは、オブジェクトをWebページからアプリケーションプログラムにインポートするタスクを簡素化する。具体的には、Webクエリダイアログにより、ユーザが、マイクロソフトのMICROSOFT EXCEL 2002表計算プログラムなど、表計算プログラムにインポートしたい表データを、Webページからグラフィカルに選択することができる。ユーザが、表データをWebページからMICROSOFT EXCEL 2002スプレッドシートにインポートするためのオプションを選択したとき、MICROSOFT EXCEL 2002に関連付けられたWebクエリダイアログボックスが表示内に現れる。WebクエリダイアログボックスがWebブラウザコントロールをホスト(host)し、これはダイナミックリンクライブラリ(「DLL」)コントロールであり、「SHDOCVW.DLL」として知られている。WebブラウザコントロールをWebクエリダイアログボックス内でホストすることは、当技術分野において周知であり、したがって、Webブラウザコントロールをダイアログボックスにおいてホストすることについての完全な説明を、この適用例では記載しない。
【0034】
Webブラウザコントロール、SHDOCVW.DLLは、Webブラウザモジュールをホストし、これは別のDLLコントロールであり、「MSHTML.DLL」として知られる。MSHTML.DLLコントロールは、マイクロソフトのMICROSOFT INTERNET EXPLORER Webブラウザアプリケーションプログラム用のブラウザコンポーネントである。WebブラウジングモジュールのMSHTML.DLLまたは他のいかなるWebブラウジングモジュールをもホストすることにより、Webブラウザコントロールに、WebページをHTMLなどのグラフィカルなフォーマットで表示する能力を提供する。WebブラウザコントロールがWebページを表示できるようにすることに加えて、Webブラウジングモジュールにより、Web開発者は、ドキュメントオブジェクトモデル(「DOM」)を介して、HTML文書の要素と、プログラムにより対話することが、Webブラウザコントロールを介して可能となる。たとえば、Web開発者が、Webページにおける表要素の集まりをプログラムにより見て、Webページ内のオブジェクトの左上の座標をプログラムにより計算することなどができる。
【0035】
MSHTML.DLLコントロールをWebクエリダイアログボックスにおいてホストすることにより、ユーザはWebページの周辺でグラフィカルにナビゲートし、WebページがWebクエリダイアログボックスで表示される間に、Webページ内のオブジェクトをグラフィカルに選択することができる。HTMLフォーマットにより、多数のWebページをグラフィカルな様式において共にリンクさせることもできる。これにより、ユーザが、手動でWebページのテキストのアドレスをアドレスバーに入力するのではなく、Webページにおいて表示されたオブジェクトを、マウスなどのポインティングデバイスを使用して選択することによって、別のWebページを開くことができる。
【0036】
WebブラウザコントロールのSHDOCVW.DLLがWebクエリダイアログボックスにおいて開かれた後、最初のWebページが表示される。最初のWebページは、いかなるWebサイトにすることもでき、これはユーザが自分のMICROSOFT EXCEL 2002表計算プログラム用の自分の「ホームページ」として設定したものである。何らかの理由で、ユーザが「ホームページ」を自分のMICROSOFT EXCEL 2002表計算プログラム内で割り当てていなかった場合、最初のWebページは、ユーザのWebブラウザプログラム用のレジストリにおけるデフォルトページとして設定されているWebページとなる。しかし、ユーザがホームページを自分のWebブラウザプログラム用に割り当てていなかった場合、最初のページに、Webクエリにハードコードされた所定のURLがロードされる。
【0037】
たとえば、ユーザの表計算プログラムがMICROSOFT EXCEL 2002表計算プログラムであり、ユーザのWebブラウザプログラムがMICROSOFT INTERNET EXPLORERブラウザプログラムであった場合、最初のWebページは、レジストリの場所「HKey_Current_User\Software\Microsoft\office\10.0\Excel\Options\WebQuery HomePage」に格納されたURLとなる。このレジストリ入力が存在しなかった場合、レジストリの場所「HKey_Current_User\Software\Microsoft\Internet Explorer\Main\Start Page」が、ユーザのMICROSOFT INTERNET EXPLORERブラウザプログラムの最初のWebページを含んでおり、これが検査される。しかし、このレジストリの場所が存在しなかった場合、ダイアログボックスには、「http://www.msn.com」などの所定のURLまたは他のいずれかのURLがロードされる。最初のページがロードされた後、ユーザは、表計算プログラムへのインポートにおいて関心のある表データを含む任意のWebページへナビゲートする自由を有しており、これは、リモートサイトへグラフィカルにホットリンクすることによって、あるいは、所望のWebページの有効なURLを手動で入力することによって行う。
【0038】
別の代替方法として、ユーザが所望のURLを、もっとも最近表示されたWebサイトのリストを含むドロップダウンメニューから選択することができる。Webクエリを作成したいユーザは典型的には、表データを含むWebページにナビゲートするが、ユーザがWebクエリダイアログボックスを使用して、表データを含むものだけでなく、World Wide Web上のいかなるサイトにもナビゲートできることに留意されたい。
【0039】
WebページがWebクエリダイアログボックス内で表示されると、Webページ内の表データなど、データオブジェクトが解析される。トリガイベントは、Webクエリダイアログボックスの起動、および、Webページの、ダイアログボックスにおいてホストされたWebブラウザモジュールへのダウンロードである。Webページのローディングが終了すると、HTML文書は、MICROSOFT EXCEL 2002表計算プログラムにインポートすることができる表データなど、データオブジェクトについて走査される。たとえば、ユーザがWebクエリをMICROSOFT EXCEL 2002表計算プログラムにおいて作成した場合、Webページが、Webクエリダイアログボックスにダウンロードされたとき、表データについて走査される。同様に、ユーザがデータを、MICROSOFT POWERPOINTプレゼンテーションプログラムなどのプレゼンテーションプログラムにインポート中であった場合、Webページがグラフィカルデータについて走査される。この出願のためにのみ、解説は、表データをMICROSOFT EXCEL 2002表計算プログラムにインポートすることを対象とすることに留意されたい。しかし、テキスト、グラフィカルおよびデータベースなど、他のフォーマットのオブジェクトを、このようなデータフォーマットをサポートする他のアプリケーションプログラムへ、本発明の範囲から逸脱することなくインポートできることは、当業者には理解されよう。
【0040】
出会った表データの各インスタンスについて、アイコンが作成され、表データに関連付けられる。アイコンは、ユーザが、表計算プログラムにインポートすることができる表データのあらゆるインスタンスを迅速に識別するための助けとなる。たとえば、表データを、HTML文書内で、TABLE、PRE、XMP、LISTINGおよびPLAINTEXTなど、いくつかのタグのうちの1つに格納することができる。したがって、HTML文書において出会った、上に列挙した各タグについて、アイコンが生成され、各タグに関連付けられる。しかし、TABLEタグを、HTML文書内でプレースホルダまたはスペーサとして使用することができ、これは意味のあるデータを含まなくてもよい。したがって、プレースホルダとして使用されるTABLEタグのこれらの特定のインスタンスを省略することは助けになる。したがって、アイコンを、TABLEタグに格納された表データのインスタンスと関連付ける前に、TABLEタグの水平および垂直の寸法が検索される。水平または垂直の寸法のいずれかがしきい値よりも小さかった場合、アイコンがその特定のTABLEタグと関連付けられない。たとえば、TABLEタグがスペーサとして使用されるかどうかを判定するためのしきい値を8画素にすることができ、それは、これが標準テキスト文字の最小寸法であるからである。このように、8画素より小さい垂直または水平の寸法を有するいかなるTABLEオブジェクトも、意味のあるデータを含まない可能性が高く、したがってバイパスされる。
【0041】
アイコンが表データの各インスタンスに関連付けられると、表データの各インスタンスについての左上隅の絶対位置が計算される。典型的には、HTML文書において、HTML文書内の各オブジェクトの位置が、親オブジェクトに相対的に述べられる。親オブジェクトの位置は、HTML文書の本文に相対的に述べられる。したがって、表データの各インスタンスの絶対位置を計算するため、表データの各インスタンスのための相対位置がドキュメントオブジェクトモデル(「DOM」)から検索される。次に、表データの各インスタンスについて、相対位置がその親の相対位置に加算される。したがって、表データの各インスタンスについての合計の相対位置が得られる。次に、各表データについての合計の相対位置が、Webページの本文の開始の絶対位置に加算されて、表データの各インスタンスについての絶対位置が得られる。この計算は2回実行される。すなわち、垂直または「上」の位置について1回、および、水平または「左」の位置について1回である。典型的には、表データの各インスタンスの左上隅についての絶対位置が計算される。しかし、表データのいかなる部分の絶対位置も、本発明の範囲を変更することなく計算することができる。表データの左上隅の絶対位置が計算された後、アイコンが、計算された絶対位置に近接して、HTML文書に挿入される。これにより、ユーザがアイコンを表データにグラフィカルに関連付けることができることを保証する。
【0042】
図を参照すると、図2は、Webクエリダイアログボックス205がWebページを表示する方法の例示である。Webクエリダイアログボックス205は典型的には、MICROSOFT EXCEL 2002表計算プログラム内で表示される。Webクエリダイアログボックス205は典型的には、現在表示中であるWebページのURLを表示するためのアドレスバー210を含む。Webクエリダイアログボックス205は一連のコマンドボタンも含み、これは、アドレスバー210において表示されたURLをダウンロードするための「GO」ボタン215、および、以前のURLを表示するための「BACK」ボタン220などである。ダイアログボックス205は、ユーザが表データをインポートすることができる「IMPORT」ボタン235、および、Webクエリ操作を打ち切り、Webクエリダイアログボックス205を閉じるために使用することができる「CANCEL」ボタン240も含む。
【0043】
ダイアログボックス205はWebブラウザコントロール225も動作し、これはSHDOCVW.DLLとしても知られる。Webブラウザコントロール225はOCXであり、これは、Webブラウザモジュール、または、ワードプロセッサ若しくは表計算プログラムなど、他のActiveX文書をホストすることができる。Webブラウザコントロール225は、MSHTML.DLLと呼ばれるWebブラウザモジュールをホストし、これは、HTML文書を解析かつ表示することができる。したがって、このような方法において、Webブラウザコントロール225が、Webページをダイアログボックス205内に表示することができる。
【0044】
図3は、ウィンドウ300の例示であり、これは、MICROSOFT EXCEL 2002表計算プログラムにおいて、ユーザが外部データをMICROSOFT EXCEL 2002ワークシートにインポートするためのオプションを選択したときの、典型的な画面表示を示す。MICROSOFT EXCEL 2002ウィンドウ300は、ドロップダウンメニューバー305およびコマンドバー310を含む。MICROSOFT EXCEL 2002ウィンドウ300は、閲覧領域315も含む。MICROSOFT EXCEL 2002プログラムの内容が、閲覧領域315において閲覧され、これは、テキスト、数値、公式などを含むことができる複数のセルを含む。
【0045】
MICROSOFT EXCEL 2002ウィンドウ300に関連付けられたものが、「新しいWebクエリ(New Web Query)」ダイアログボックス320であり、表計算プログラム内に現れる。新しいWebクエリダイアログボックス320は、Webページに関連付けられたURLを含む標準のアドレスバー325、および、Webページの内容を表示する閲覧領域330を含む。典型的には、アドレスバー325が最初に、新しいWebクエリオプションが選択されたときにプレロードされる最初のURLを含む。通常は、最初のURLは、レジストリキー「HKey_Current_User\Software\Microsoft\Office\10.0\Excel\Options\WebQuery HomePage」に含まれた、ユーザのスタートアップWebページのアドレスである。しかし、ユーザがMICROSOFT EXCEL表計算プログラム用に選択された最初のスタートアップWebページを格納しなかった場合、レジストリキー「HKey_Current_User\Software\Microsoft\Internet Explorer\Main\Start Page」内にユーザのMICROSOFT INTERNET EXPLORERブラウザプログラム用のホームページとして格納されているWebページがロードされる。しかし、ユーザが、自分のMICROSOFT INTERNET EXPLORERブラウザプログラム用のホームページとして列挙されたURLアドレスを有していなかった場合、「www.msn.com」など、事前定義されたURLがアドレスバーにロードされる。この最後の事前定義されたURLは、MICROSOFT EXCEL 2002表計算プログラムに「ハードコード」されている。この時点で、ユーザは自由にインターネットをナビゲートして、インポートしたい表データを含むWebページを探し出すことができる。ユーザは、手動でWebサイトのURLをアドレスバー325に入力することができ、あるいは、ポインティングデバイスを使用して、インターネット中を操作することができる。ユーザが適切なWebページを選択した後、これがインターネットブラウザモジュールにダウンロードされる。例示においては、アドレスバーがURL「http://finance.yahoo.com/q?s=msft&d=v1」を含み、これが、ダイアログボックス320の閲覧領域330において表示されたWebページに関連付けられる。
【0046】
複数のアイコン340−1〜340−3は、それぞれ視覚的属性を有し、Webページにおいて表データの各インスタンスに近接して表示される。各アイコン340が、Webページ上のどのオブジェクトが表データであり、表計算プログラムにインポートすることができるかについての視覚的指示を、ユーザに提供する。加えて、Webページ全体のためのアイコン335が、閲覧領域330の左上隅に表示される。これはユーザに、Webページ全体の内容を表計算プログラムにインポートすることができることを指示する。表データの各インスタンスに関連付けられたアイコン340−1〜340−3、および、Webページ全体のためのアイコン335は、すべて少なくとも1つの視覚的属性を有し、これは、色、記号、テキスト、フォント、または、これらに関連付けられたこれらの要素の組み合わせなどである。たとえば、例示においては、各アイコン(335、340−1〜340−3)が、ボックスによって囲まれた矢印を含み、この背景色が黄色に設定される。これらのアイコン(335、340)が、表データを含むWebページにおいてオブジェクトを迅速に識別する利点を提供する。このように、基のHTML文書を見直さなければならないのではなく、ユーザは単に、新しいWebクエリダイアログボックス320において表示されたWebページを見て、どの要素をWebクエリにインポートすることができるかについてのグラフィカルな表現を得ることができる。
【0047】
図4は、ユーザが表データのインスタンスをWebページから選択した後の、MICROSOFT EXCEL 2002ウィンドウ300を示す、典型的な画面表示の例示である。例示では、カーソル345が、表データ405に関連付けられたアイコン410の上に位置付けられる。カーソル345がアイコン410、または他のいずれかのアイコンの上に位置付けられるとき(「mouseover」イベントとして知られる)、アイコン410に関連付けられた視覚的属性が変更される。たとえば、図および例示的実施形態では、カーソル345がアイコン410の上に位置付けられるときはいつでも、アイコン410の背景色が黄色から緑色へ変化した。これにより、ユーザへ、表データが選択するために使用可能であるという視覚的指示を提供する。加えて、「mouseover」イベントの間、表データと同じ寸法を有するボックス415など、第2のインジケータを、アイコン410に関連付けられた表データ405の上に位置付けることができる。この第2のインジケータは、追加の視覚的サインをユーザに提供し、Webページ上のどの表データをユーザが選択することができるかを例示する。第2のインジケータはGIF画像415から成る。GIF画像415は、透過的な強調表示画像の周囲の、枠付きボックスから成る。枠付きボックスは、暗色(たとえば青)に対応する色値から成り、これが視覚的に表データ405をWebページの残りから分離する。強調表示またはボックスの内部は、透過GIFフォーマットの画像を含む。透過GIFフォーマットの画像により、ユーザが表データ405を、ボックスを介して見ることができる。加えて、テキストボックス420を表示して、ユーザに、表データについての追加情報を提供することもできる。例示的実施形態では、mouseoverイベントが起こるときは、テキストボックス420が、アイコン410に近接して、「クリックしてこの表を選択(Click to select this table)」という命令と共に現れる。他の適切な命令をテキストボックス420内に、本発明の範囲を変更することなく配置できることは、当業者には理解されよう。たとえば、テキストボックス420は、別法として、表データが名前付きの範囲であった場合、表データの名前を含むことができる。
【0048】
図5は、MICROSOFT EXCEL 2002表計算プログラムにおける画面表示の例示であり、リフレッシュ可能なWebクエリをMICROSOFT EXCEL 2002ワークシートにおいて作成する結果を例示する。MICROSOFT EXCEL 2002ウィンドウ300は、内容ウィンドウ(content window)315(図3)において表示されたセル内にインポートされた表データ502を示す。「外部データ(External Data)」メニューボックス504が、表データ502に近接して表示され、これは、「クエリの編集(Edit Query)」ボタン506、「データ範囲プロパティ(Data Range Properties)」ボタン508、「クエリパラメータ(Query Parameters)」ボタン510「データのリフレッシュ(Refresh Data)」ボタン512、「リフレッシュの取り消し(Cancel Refresh)」ボタン514、「すべてのリフレッシュ(Refresh All)」ボタン516、および「ステータスのリフレッシュ(Refresh Status)」ボタン518を含む。「データのリフレッシュ」ボタン512が選択されたとき、表データ502が、表データを含むWebページにおいて起こったいかなる変化によっても、自動的に更新される。
【0049】
図6は、表データをWebページからMICROSOFT EXCEL 2002ワークシートへ、Webクエリダイアログボックス320(図3)を使用してインポートするための方法を例示する、ルーチン600の論理的流れ図である。ルーチン600はステップ605で開始し、ユーザが、新しいWebクエリダイアログボックス320(図3)を表計算プログラム内から開くためのコマンドを選択する。ステップ605の後にステップ610が続き、ユーザが新しいWebクエリダイアログボックスを作成することを意図したか、既存のWebクエリダイアログボックスを開くことを意図したかについての判定がなされる。ユーザが新しいWebクエリダイアログボックス320を作成することを選択した場合、「作成」分岐の後にステップ615が続き、最初のWebページが新しいWebクエリダイアログボックス320にロードされる。最初のWebページは、ユーザが自分のMICROSOFT EXCEL 2002表計算プログラム用の自分の「ホームページ」として設定した、いかなるWebサイトにすることもできる。何らかの理由で、ユーザがホームページを自分のMICROSOFT EXCEL 2002表計算プログラムにおいて設定していなかった場合、自分のMICROSOFT INTERNET EXPLORERブラウザプログラム用のホームページが、Webクエリダイアログボックスにおける最初のページとして使用される。しかし、ユーザが自分のMICROSOFT INTERNET EXPLORERブラウザプログラム内で関連付けられた「ホームページ」を有していなかった場合、表示される最初のページが、MICROSOFT EXCEL 2002表計算プログラムにハードコードされたWebサイトとなる。たとえば、レジストリの場所「HKey_Current_User\Software\Microsoft\Office\10.0\Excel\Options\WebQuery HomePage」に格納された、MICROSOFT EXCEL 2002表計算プログラムに関連付けられた最初のWebページが、最初のWebページとしてWebクエリダイアログボックスにロードされる。何らかの理由で、このキーが存在しなかった場合、Webページが、レジストリの場所「HKey_Current_User\Software\Microsoft\Internet Explorer\Main\Start Page」に格納された、ユーザのMICROSOFT INTERNET EXPLORERの「ホームページ」となる。しかし、このレジストリの場所に格納されたURLがなかった場合、MICROSOFT EXCEL 2002表計算プログラムにハードコードされた所定のURLが、Webクエリダイアログボックスに最初のホームページとしてロードされる。たとえば、ユーザが、自分のMICROSOFT INTERNET EXPLORERブラウザプログラム用の自分のデフォルトホームページとして指定された、最初のWebページを有していなかった場合、URL「http://www.msn.com」が最初にダイアログボックスにロードされる。最初のWebページがダイアログボックスにロードされた後、ユーザは、自由にインターネットをナビゲートして、自分のMICROSOFT EXCEL 2002ワークシートにインポートしたい、表データを含むWebページを、ロードすることができる。
【0050】
ステップ615の後にステップ620が続き、ユーザがダイアログボックス内で、MICROSOFT EXCEL 2002表計算プログラムにインポートするための表データを、Webページからグラフィカルに選択する。ユーザは、マウスなどのポインティングデバイスを使用して、カーソルを表データの上に位置付けてデータを選択することができる。別法として、ユーザは、キーボード、スタイラス、ライトペンなど、他のポインティングデバイスを使用して、表データを選択することもできる。たとえば、ユーザが「TAB」キーを使用して、Webページに表示された、表データのあるインスタンスから表データの別のインスタンスへ順次に移動することができる。ユーザがカーソルを、ユーザが自分のMICROSOFT EXCEL 2002ワークシートにインポートしたい表データの上に位置付けた後、次いで、ユーザがデータを選択する。典型的には、データは、マウス上で事前定義されたボタンをクリックすることによって選択される。しかし、表データを選択する他の方法を使用することができ、これは、キーボード上で「ENTER」キーを押し下げること、または、スタイラスを押し下げることなどである。この解説は、データの単一のインスタンスを選択することを対象としたが、Webページ内の表データの多数のインスタンスを選択できることを理解されたい。
【0051】
次に、ステップ620の後にステップ625が続き、選択された表データがMICROSOFT EXCEL 2002ワークシートへ、クエリテーブルとしてインポートされる。典型的には、ユーザが、MICROSOFT EXCEL2002ワークシート内でクエリテーブルが位置付けられる位置を、カーソルを所望の場所に近接したセルの上に配置して、事前定義されたマウスボタンまたはキーを押し下げることによって、選択する。最後に、表データがMICROSOFT EXCEL 2002ワークシートにインポートされた後、ステップ625の後に「終了」ステップが続く。
【0052】
しかし、ステップ610へ戻ると、ユーザが新しいWebを作成することを選択せずに、既存のWebクエリを開いた場合、「編集」分岐の後にステップ630が続き、既存のWebクエリに関連付けられたWebページがWebクエリダイアログボックスにロードされる。たとえば、ユーザが先にWebクエリを作成していた場合、ユーザは、クエリテーブルを表計算プログラムにおいて選択し、編集コマンドをメニューバーから呼び出すことによって、既存のWebクエリを開くことができる。WebページがWebクエリダイアログボックスにロードされた後、ルーチン600がステップ620へ進行し、ユーザが、編集、あるいは表計算プログラムにWebクエリとしてインポートするための、表データの少なくとも1つのインスタンスをグラフィカルに選択する。既存のWebクエリダイアログボックスにインポートするための表データを選択するための方法は、上述の、新しいWebクエリダイアログボックスにインポートするための表データを選択するための方法に等しい。次いで、ステップ620の後にステップ625が続き、選択された表データがMICROSOFT EXCEL 2002ワークシートにインポートされる。最後に、ステップ625の後に「終了」ステップが続く。
【0053】
図7は、図6のルーチン615を例示する論理的流れ図であり、WebページをWebクエリダイアログボックスにロードするものである。ルーチン615はステップ705で開始し、アイコンおよびイベントハンドラが生成され、Webページ全体に関連付けられる。アイコンをWebページ全体に関連付けることにより、ユーザが、表データの特定のインスタンスではなく、Webページ全体を表計算プログラムにインポートすることができる。
【0054】
次に、ステップ705の後にステップ710が続き、最初の表データオブジェクトがドキュメントオブジェクトモデル(「DOM」)から検索される。表データを、Webページにおけるいくつかの異なるオブジェクトに格納することができる。具体的には、DOMが、TABLE、PRE、XMP、LISTINGおよびPLAINTEXTオブジェクトについて走査され、これらのすべてが表データを格納することができる。これらのオブジェクトのうちの最初のものに出会ったとき、Webページにおけるオブジェクトの位置が示される。テキスト、グラフィカルファイル、ビデオファイルなど、表データを含まない任意のオブジェクトはパスされる。しかし、これらのオブジェクトを表データ中にネストすることができる。したがって、非表データが表データ内に埋め込まれる場合では、非表データをWebクエリにインポートすることができる。
【0055】
次に、ステップ710の後にステップ715が続き、TABLEオブジェクトの水平および垂直の寸法が所定の値よりも大きいかどうかの判定がなされる。表データを保持するほかにも、TABLEオブジェクトをWebページレイアウト内でプレースホルダまたはスペーサとして使用することができる。これらのTABLEオブジェクトをユーザへ、表計算プログラムにインポートすることができる表データのインスタンスとして指示することは、Webクエリの作成を簡素化するよりもむしろ複雑にする。TABLEオブジェクトの垂直または水平の寸法が事前定義された値よりも小さかった場合、表データを含むオブジェクトがプレースホルダとして使用中であるという仮定が行われる。したがって、スペースとして使用されるこれらのTABLEオブジェクトは、Webクエリとしてインポートすることができる可能なオブジェクトとしてみなされない。例示的実施形態では、事前定義された値が、TABLEオブジェクトの水平および垂直の寸法について8画素である。8画素がしきい値として選択されたが、これは、Webページ上で表示することができる最小テキストサイズが典型的には8画素であるからである。したがって、幅または高さが8画素より小さいいかなるオブジェクトも、スペーサである可能性が高い。8画素がしきい値として設定されるが、本発明の範囲を変更することなく、いかなる数の画素も、TABLEタグが単にスペーサであるかどうかを判定するためのしきい値として選択できることは、当業者には理解されよう。
【0056】
水平および垂直の寸法が、事前定義された値よりも大きいという判定がなされた場合、「YES」分岐の後にステップ720が続き、DOMにおける表データオブジェクトおよびその位置がキャッシュメモリの場所に格納される。
【0057】
次に、ステップ720の後にステップ725が続き、DOMにおける最後の表データオブジェクトが検索されたかどうかの判定がなされる。最後の表データオブジェクトがDOMから検索された場合、「YES」分岐の後にステップ730が続き、キャッシュメモリに格納され、配置された最初の表データが、キャッシュメモリから検索される。
【0058】
次いで、ステップ730の後にステップ735が続き、アイコンが生成され、表データに関連付けられる。アイコンは、それらをユーザが見やすくするための、少なくとも1つの視覚的属性を有する。たとえば、視覚的属性を、色、テキスト文字、特殊文字、グラフィカルオブジェクトなどにすることができる、例示的実施形態では、各アイコンが、黒い枠付きの黄色のボックス内に含まれた右向きの矢印からなる。アイコンが作成された後、これらがHTML文書における最上層に配置されて、これらが常にユーザに対して可視であることが保証される。具体的には、zIndex値が、HTML文書におけるあらゆるオブジェクトに関連付けられ、オブジェクトがHTML文書のどの層に現れるかを指示するものであり、これが「maxint」として定義された最大値に設定される。zIndex値を最大値「maxint」に設定することにより、アイコンをHTML文書の最上層に配置する。したがって、アイコンが常に、Webクエリダイアログボックス内でユーザに対して可視となる。
【0059】
ステップ735の後にステップ740が続き、表データを含む各オブジェクトの絶対位置が計算される。典型的には、HTML文書におけるオブジェクトが親子階層関係によって定義され、子オブジェクトの位置が親オブジェクトに相対的なオフセット値として与えられる。各親オブジェクトは、HTML文書の<BODY>タグに相対的なオフセット値によって定義される。しかし、親オブジェクトが同時に子オブジェクトでもある可能性があることに留意されたい。これらの場合では、親オブジェクトでも子オブジェクトでもある表データオブジェクトの位置が、それ自体の親オブジェクトに相対的に計算される。親オブジェクトがそれ自体であり、子オブジェクトでなかったときのみ、その位置が<BODY>タグからのオフセット値として与えられる。
【0060】
次に、ステップ740の後にステップ745が続き、各アイコンが、表データを含む各オブジェクトに近接して位置付けられる。例示的実施形態では、アイコンが、表データを含む、対応するオブジェクトの左上隅に近接して配置される。しかし、本発明の範囲を変更することなく、アイコンを、上、下または横などに近接した、他の3つの隅のいずれか1つに近接するなど、オブジェクトに近接した他の場所に配置することができることは、当業者には理解されよう。アイコンをオブジェクトに近接して位置付けることにより、表データをユーザへ、より満足のいくユーザフレンドリーな方法で、Webクエリダイアログボックスにおいて表示されたWebページを混乱させることなく、提示する。
【0061】
最後に、ステップ745の後にステップ750が続き、キャッシュメモリにおける最後のデータオブジェクトに達したかどうかについての判定がなされる。キャッシュメモリにおける最後の表データオブジェクトに達した場合、「YES」分岐の後に「終了」ステップが続く。しかし、Webページにおける最後の表オブジェクトに達していなかった場合、「NO」分岐の後にステップ755が続き、キャッシュメモリに格納された次の表データオブジェクトが検索される。次いで、ステップ755がステップ735にループバックし、表データオブジェクトに近接してアイコンを追加する処理が繰り返される。
【0062】
ステップ715へ戻ると、TABLEオブジェクトの水平または垂直の寸法が所定の値より小さいという判定がなされた場合、TABLEオブジェクトが意味のあるデータを含んでいないことが判定され、「NO」分岐の後に直接ステップ725が続き、DOMにおける最後の表データオブジェクトに達したかどうかの判定がなされる。DOMにおける最後の表データオブジェクトに達した場合、「YES」分岐の後にステップ730が続き、アイコンを、キャッシュメモリに格納された表データの各インスタンスに関連付ける処理が開始される。しかし、DOMにおける表データの最後のインスタンスに達していなかったという判定がなされた場合、「NO」分岐の後にステップ760が続き、DOMにおける表データの次のインスタンスが検索され、アイコンをWebページに挿入する処理が繰り返される。
【0063】
図9は、図7のルーチン740を例示する論理的流れ図であり、表データを含む各オブジェクトの絶対位置が計算される。ルーチン740はステップ805で開始し、表データを含むオブジェクトの左上隅の相対位置を定義する値がDOMから検索される。典型的には、HTML文書内で、オブジェクトが親子階層関係においてセットアップされる。階層関係における各親オブジェクトは、多数の子オブジェクトを有することができる。加えて、各子オブジェクト自体が親オブジェクトであり、多数の子オブジェクトを有する可能性がある。HTML文書における一番上または最上の親オブジェクトが、<BODY>要素である。<BODY>要素の子である各オブジェクトの位置に、<BODY>要素の絶対位置に相対的な値が与えられる。後続の各子要素の位置が、その親オブジェクトに相対的な値によって与えられる。すなわち、HTML文書における各オブジェクトの位置が、その親に相対的なオフセットとして与えられる。Webクエリダイアログボックス内の表データの各インスタンスの位置が、Webクエリダイアログボックスのサイズに依存することに留意されたい。ダイアログボックスは一般にサイズを変更することができるので、ダイアログボックス内のオブジェクトの位置は、Webクエリダイアログボックスのサイズが変更されたときに変更することができる。したがって、Webクエリダイアログボックスのサイズが変更されるたびに、表データの各インスタンスの位置も再計算されなければならない。
【0064】
ステップ805の後にステップ810が続き、子および親オブジェクトの間の相対位置が共に、対象のオブジェクトから開始して、HTML文書の<BODY>タグである最上の親オブジェクトまではるかにさかのぼって加算される。たとえば、表データが、<BODY>タグの子オブジェクトである<TABLE>タグに含まれた場合、<TABLE>タグの位置が単にオフセット値によって与えられる。もう1つの例として、表データが、<PLAINTEXT>タグの子である<TABLE>タグに含まれ、<PLAINTEXT>タグそれ自体が<BODY>タグの子であった場合、<TABLE>タグの位置が、<TABLE>タグのオフセット値および<PLAINTEXT>タグのオフセット値を加算することによって計算される。この方法において、表データを含むオブジェクトの絶対位置が計算される。最後に、ステップ810の後に「END」ステップが続く。
【0065】
図10は、ルーチン620を例示する論理的流れ図であり、ユーザが、アプリケーションプログラムにインポートするための表データを含むオブジェクトを選択する。ルーチン620はステップ905で開始し、ユーザがカーソルを、表データのインスタンスに関連付けられたアイコンの1つの上に位置付けたかどうかについての判定がなされる。ユーザがカーソルをアイコンの1つの上に位置付けた場合、「YES」分岐の後にステップ910が続き、アイコンの視覚的属性が変更される。たとえば、例示的実施形態では、アイコンの視覚的属性は背景色であり、これは黄色に設定されている。しかし、カーソルがアイコンの上をさまよっているとき、これは「mouseover」イベントとしても知られており、背景色が黄色から緑色へ変化する。これにより、その特定のアイコンに関連付けられた表データを選択することができるという視覚的フィードバックを、ユーザに提供する。
【0066】
ステップ910の後にステップ915が続き、ボックスが、表データを含むオブジェクトの上に配置される。ボックスは「blank.gif」画像に格納されており、背景属性および枠属性を含む。枠属性が、システムの強調表示色の値に設定される。背景属性は、空または「透過」である。したがって、ボックスの下にあるいかなる表データまたはテキストも、表示上でユーザに対して可視である。ボックスがWebページにおける第3の層に配置され、これは、ボックスに関連付けられたzIndexを、可能とされた層の最大数に設定することによって行い、これは「maxint」から2を引いた値(maxint−2)によって与えられる。ボックスを、HTML文書における最大層以下に配置することにより、強調表示画像が表示されたときに「ちらつき」が表示上で起こらないことが保証される。「ちらつき」は、強調表示された画像のzIndex値がアイコンのzIndex値よりも高かった場合に起こり、それがアイコンの上になり、かつアイコンに「mouseover」イベントを受けさせるようにし、交互にアイコンを覆い隠す。しかし、mouseoverイベントは、アイコンが覆い隠されたときに停止する。これが、強調表示された画像が消えることをトリガするが、そうなったとき、mouseoverイベントは、マウスが移動されなかったとしても再度発する。繰り返しmouseoverイベントを発するこのサイクルが、「ちらつき」を引き起こすものである。
【0067】
ステップ915の後にステップ920が続き、ユーザが表計算プログラムにインポートするためのオブジェクトを選択したかどうかについての判定が、「オンクリック(on−click)」イベントが表データのインスタンスの上で起こったかどうかを判定することによって行われる。「オンクリック」イベントが起こった場合、「YES」分岐の後にステップ925が続き、アイコンの視覚的属性が再度変更される。たとえば、「オンクリック」イベントが起こったとき、表データに関連付けられたアイコンが、右向きの矢印から、緑色の背景上のチェックマークに変化する。次に、ステップ925の後にステップ930が続き、表データを含むオブジェクトの背景属性が変更される。具体的には、オブジェクトの背景属性が、その元の色から、システムの強調表示色および白色からなる混合色へ変更される。オブジェクトの元の背景属性がメモリに格納され、ユーザが表データを含むオブジェクトを選択解除した場合、元の背景色を復元できるようにする。アイコンの視覚的属性および背景属性の変更により、ユーザに、表データが選択されており表計算プログラムにインポートされる準備ができたという、視覚的確認を提供する。
【0068】
加えて、いくつかのWebページは、1ページ上に表示することができるものより多くの素材を含む。それに伴い、いくつかのWebページが多数のページまたはフレームを有する可能性がある。Webページが多数のフレームを含んだとき、すべてのフレームが表データについて走査され、これについてアイコンが作成され、これに関連付けられる。加えて、各フレームがそれ自体のウィンドウおよびURLを有し、WebページのURLではなくフレームのURLを、Webクエリを作成するときに使用しなければならない。さらに、表データのインスタンスが先に別のフレーム上で選択されていた場合、その表データのインスタンスは、表データの新しいインスタンスが別のフレーム上で選択されたときに選択解除される。したがって、同じフレーム内の多数の表のみを、同時に選択してインポートすることができる。さらに、その後、ユーザが表データをリフレッシュしたとき、Webページ全体ではなく、選択された表データを含むフレームのみがWebクエリにロードされる。表データを単一のフレームからインポートすることは、MICROSOFT EXCEL 2002表計算プログラムの制限であって、Webクエリダイアログのものではないことに留意されたい。それと反対に、Webクエリダイアログは、ユーザが表を多数のフレームから選択かつインポートできるようにすることができる。したがって、表を単一のフレームからインポートする制約は、MICROSOFT EXCEL 2002表計算プログラムが、データを多数のフレームの間で転送できないことから起こる。
【0069】
リフレッシュ可能なWebクエリ
本発明はソフトウェアユーティリティにおいて実施することができ、これを「Webクエリスマートタグ」(WQST)と称することができる。このユーティリティの一実施形態が、MICROSOFT EXCEL 2002およびINTERNET EXPLORER 5.0ソフトウェアプログラムに組み込まれる。WQSTユーティリティにより、ユーザがより容易にリフレッシュ可能なWebクエリを作成することができる。「ソフトウェアユーティリティ」という用語は、典型的には、ソフトウェア機能、ルーチン、またはダイナミックリンクライブラリ(DLL)を示し、これは、事前定義されたインタフェースのセットを介して他のソフトウェアモジュールによってアクセス可能な、独立したオブジェクトまたはモジュールとして構成される。しかし、本明細書の意味内の「ユーティリティ」を、コンピュータオペレーティングシステム、または、Web開発アプリケーションプログラムなどのアプリケーションプログラムに組み込むこともできる。したがって、本発明は、本明細書において記載されたWQSTユーティリティの方法を実行する、いかなるタイプのソフトウェアモジュールまたはシステムをも包含し、ダイナミックリンクライブラリ(DLL)など、特定のオブジェクト構成に限定されない。加えて、本発明を表計算プログラムに関連して記載するが、本発明が、ユーザが表データをWebページからインポートすることができる他のプログラム、専用のWebオーサリングツール、文書処理プログラム、プレゼンテーションプログラム、描画プログラムなどに適用可能であることは、当業者には理解されよう。
【0070】
WQSTユーティリティにより、ユーザが、いくつかの方法のうちの1つを使用して、リフレッシュ可能なWebクエリをWebブラウザプログラムから直接作成することができる。最初の方法は、「コピー−ペーストWebクエリ」方法として知られており、ユーザが、インターネットブラウザモジュールにおいて開かれたWebページにおいて表示された表データをコピーし、この表データを表計算アプリケーションへ、コピー−ペーストコマンドを呼び出すことによってインポートすることができる。もう1つの方法は「Microsoft Excelへエクスポート」として知られており、これにより、ユーザが表データをWebページにおいて選択することができ、これは、カーソルがWebブラウザプログラムにおいて位置付けられてドロップダウンコンテキストメニューを表示する間に、右マウスボタンを押し下げることによって行う。コンテキストメニューは、ユーザに、表データをMICROSOFT EXCEL 2002表計算プログラムへエクスポートするためのオプションを提供する。
【0071】
最後の方法は「Microsoft Excelで編集」として知られており、MICROSOFT INTERNET EXPLORER Webブラウザプログラムにあるオプションであり、選択されたとき、MICROSOFT EXCEL 2002表計算プログラムを起動する。このオプションにアクセスするには、ユーザがWebページをMICROSOFT INTERNET EXPLORER Webブラウザプログラムにおいて開き、ツールバー上のドロップダウンメニューから「Microsoft Excelで編集」オプションを選択する。WebページがMICROSOFT EXCEL 2002表計算プログラムにより作成された場合、MICROSOFT EXCEL 2002表計算プログラムを使用して、ファイルが開かれる。しかし、Webページが別のプログラムにより作成された場合、Webページ全体がWebクエリダイアログボックスにインポートされ、次いで、ユーザが表計算プログラムにインポートしたい表データを選択することができる。
【0072】
典型的には、ユーザがWebページから表計算プログラムへコピーしたいデータのブロックは、本質において表である。これは、表計算プログラムが特に表データを操作するために設計されているという事実による。しかし、表計算プログラムは、テキストまたはグラフィックなど、他のタイプのデータを操作することができる。したがって、この適用例の目的では、WQSTユーティリティを、表データの操作に関連して記載するが、本発明の範囲から逸脱することなく、リフレッシュ可能なWebクエリを、テキスト、グラフィックなど、他の形式のデータを使用して作成できることは、当業者には理解されよう。3つの各方法を、以下で詳細に論じる。
【0073】
コピー−ペーストWebクエリ
WQSTユーティリティを使用してWebクエリを生成する最初の方法は、「コピー−ペーストWebクエリ」として知られているソフトウェアモジュールである。コピー−ペーストWebクエリモジュールは、ペースト回復オンオブジェクトユーザインタフェース(OOUI)上のオプション、または、「リフレッシュ可能なWebクエリの作成」と呼ばれるスマートタグを提示する。ペースト回復スマートタグはドロップダウンメニューであり、これは、ユーザが電子ファイル、すなわちMICROSOFT EXCEL 2002ワークブックにペーストしたデータのブロックの隣に現れる。ユーザが、ペースト回復スマートタグを選択して、データをファイルにペーストすることができる方法のいくつかの異なる変形形態を表示することができる。たとえば、ユーザがデータをテキストまたはHTMLとしてペーストすることを選択することができ、アンドゥしてペーストスペシャル(Paste Special)コマンドを使用する必要はない。
【0074】
コピー−ペーストWebクエリモジュールは、ユーザが、インターネットブラウザモジュールにおいて開かれたWebページからコピーするための表データを、マウスなどのポインティングデバイスを使用して選択し、ペーストコマンドをMICROSOFT EXCEL 2002表計算プログラムにおいて呼び出したとき、起動される。ユーザが表データをMICROSOFT EXCEL 2002表計算プログラムにペーストした後、コピー−ペーストWebクエリモジュールが、ユーザによって選択された表データのデータフォーマットを検査して、これが事前定義されたデータフォーマット、具体的にはCF_HTMLであるかどうかを判定する。CF_HTMLフォーマットは、データをアプリケーションの間で、クリップボードを介して転送するために使用されるデータフォーマットである。コピー−ペーストWebクエリモジュールはCF_HTMLフォーマットを使用するが、アプリケーションの間のデータの転送を容易にする他のフォーマットを、本発明の範囲を変更することなく使用できることは、当業者には理解されよう。
【0075】
これらの条件が満たされ、すなわち、ペーストコマンドが呼び出され、クリップボード上のデータのフォーマットがCF_HTMLであった場合、コピー−ペーストWebクエリモジュールが使用可能にされる。コピー−ペーストWebクエリモジュールは最初に、表データに関連付けられたレジストリにおける第1の識別子タグが、スマートタグ上のリフレッシュ可能なWebクエリオプションを使用禁止にするための事前定義された値に設定されているかどうかを判定する。具体的には、レジストリキー「Hkey_Current_User\Software\Microsoft\Office\10.0\Excel\Options\DisablePasteAsWebQuery」が検査されて、これが所定の値を含んでいるかどうかが判定される。レジストリキーがWebクエリを使用禁止にするための所定の値を含んでいた場合、リフレッシュ可能なWebクエリを作成するためのオプションは、ユーザに対してスマートタグ上で提示されず、表データが通常の方法でMICROSOFT EXCEL 2002表計算プログラムにペーストされる。
【0076】
しかし、管理レジストリキーが使用禁止にされていない場合、コピー−ペーストWebクエリモジュールが、レジストリにおける第2の識別子タグがいくつかの事前定義された値のうちの1つに設定されているかどうかを判定する。具体的には、コピー−ペーストWebクエリが、表データを作成するために使用されたアプリケーションを識別するために使用される、表データに関連付けられたフラグが、いくつかの事前定義された値のうちの1つに設定されているかどうかを判定する。すなわち、コピー−ペーストWebクエリモジュールがMETAタグを検査しており、MICROSOFT EXCEL 2002表計算プログラム、または、MICROSOFT WORD、MICROSOFT PUBLISHER、MICROSOFT ACCESS、MICROSOFT POWERPOINT、またはMICROSOFT FRONTPAGEプログラムなど、他のいずれかのMICROSOFT OFFICE XPアプリケーションが、表データを作成するために使用されたかどうかを判定する。具体的には、コピー−ペーストWebクエリモジュールがCF_HTMLのヘッダ内部の「ProgID」METAタグを検査し、これはアプリケーションプログラムソースを指定したものである。このタグが使用可能にされた場合、これは、MICROSOFTEXCEL 2002表計算プログラムまたは別のMICROSOFT OFFICE XPアプリケーションプログラムが、表データを作成するために使用されたことを示し、次いでそれは、通常の方法で、Webクエリを作成せずに、表計算プログラムにペーストされる。
【0077】
しかし、コピー−ペーストWebクエリモジュールが、表データがMICROSOFT OFFICE XPアプリケーションプログラムからコピーされなかったと判定した場合、コピー−ペーストWebクエリモジュールがなおもう1つの判定、すなわち、CF_HTML文書における表データに関連付けられたSourceURL文字列が、十分に形成されたURLを含むかどうかの判定を行う。つまり、コピー−ペーストWebクエリモジュールがSourceURL文字列を検査して、これが「http://」、「https://」、「ftp://」、または「file://」の値のうちの1つをURLの最初に含むかどうかを判定する。これらのSourceURL文字列のうちの1つが存在した場合、これは、表データが有効なURLに関連付けられていることを示し、これに後でアクセスして表データを更新することができる。SourceURL文字列が十分に形成されていなかった場合、コピー−ペーストWebクエリモジュールが、リフレッシュ可能なWebクエリを作成するためのオプションをユーザに提示せず、表データが通常の方法で表計算プログラムにペーストされる。しかし、表データに関連付けられたURLが十分に形成された場合、コピー−ペーストWebクエリモジュールが表データを表計算プログラムにペーストし、リフレッシュ可能なWebクエリを作成するための「リフレッシュ可能なWebクエリの作成」オプションをペースト回復スマートタグ上に表示する。
【0078】
ユーザがペースト回復スマートタグを開いた後、ユーザが「リフレッシュ可能なWebクエリの作成」オプションを選択することができる。Webクエリダイアログボックスは、「新しいWebクエリ」ダイアログボックスと呼ばれ、表計算プログラムにおいて開かれる。Webクエリダイアログボックスはインターネットブラウザモジュールを含み、これが、CF_HTMLにおいて指定された同じSourceURLへ事前にナビゲートされる。次いで、ユーザが、表計算プログラムにインポートしたい同じ表データを再選択する。別法として、ユーザが、表データに関連付けられたアイコンを強調表示してインポートコマンドを呼び出すことによって、表データを再選択することができる。次いで、コピー−ペーストWebクエリモジュールが、Webページにおける表データと、スプレッドシートにペーストされた表データの間のリンクを作成する。このリンクにより、ユーザが、データメニューからリフレッシュコマンドを選択することによって、表計算プログラムにおける表データを自動的に更新することができる。
【0079】
図11から図15は、コピー−ペーストWebクエリモジュールを使用してWebクエリを作成する処理を例示する。
【0080】
図11は、表データを、INTERNET EXPLORERウィンドウ1000において表示されたWebページから選択した結果の例示である。INTERNET EXPLORERウィンドウ1000は、ドロップダウンメニューバー1005、コマンドバー1010およびアドレスバー1015を含む。Webページの内容が閲覧領域1020において閲覧される。例示では、閲覧領域1020が表データ1025を含み、そのサブセット1030が、MICROSOFT EXCEL 2002ワークシートにWebクエリとしてインポートされるために、ポインティングデバイス1035を使用して選択されている。本発明は、選択中の表データのサブセットのみを示すが、表データ1025全体を、MICROSOFT EXCEL 2002ワークシートにペーストするために選択することもできることは、当業者には理解されよう。
【0081】
図12は、MICROSOFT EXCEL 2002ウィンドウ1100の例示であり、表データ1025のサブセット1030がMICROSOFT EXCEL 2002ワークシートにペーストされた後にどのように表示されるかを例示する。MICROSOFT EXCEL 2002ウィンドウ1100は、ドロップダウンメニューバー1105および一連のコマンドバー1110、1115を含む。MICROSOFT EXCEL 2002ワークシートの内容が、閲覧領域1120において閲覧され、これは典型的には、表形式において配列されたいくつかのセルからなる。ウィンドウ1100はポインティングデバイス1035(図11)も含む。例示では、図11において表示された表データ1025のサブセット1030が、ウィンドウ1100の閲覧領域1120にペーストされた後が図示される。閲覧領域1120はドロップダウンメニューアイコンも含み、これはペースト回復スマートタグ1125として知られる。ペースト回復スマートタグ1125は、表データ1025のサブセット1030、または、表計算プログラムにペーストされる任意の他の表データにも近接して現れる。ペースト回復スマートタグ1125はドロップダウンメニューであり、これにより、ユーザが、データをファイルにペーストすることができる方法の、いくつかの異なる変形形態のうちの1つを選択することができる。たとえば、ユーザは、データをテキストまたはHTMLとしてペーストすることを選択することができ、アンドゥしてペーストスペシャルコマンドを呼び出す必要はない。表データのサブセット1030は、スマートタグ1125からペーストの変形形態の1つを使用してデータがペーストされるまで、「影付き」または「グレー表示」で表示される。
【0082】
図13は、MICROSOFT EXCEL 2002表計算プログラムにおける画面表示の例示であり、ユーザがペースト回復スマートタグ1125を呼び出した結果を例示する。ペースト回復スマートタグ1125が呼び出されたとき、ペースト回復スマートタグドロップダウンメニュー1200が現れ、ペーストコマンドの変形形態のリストを示す。たとえば、この例示では、ペースト回復スマートタグドロップダウンメニュー1200が、「ソースフォーマットを保持」コマンド1205、「デスティネーションフォーマットと一致」コマンド1210、および「リフレッシュ可能なWebクエリの作成...」コマンド1215を示し、これはコピー−ペーストWebクエリモジュールによって追加されたものであり、これにより、ユーザがデータをWebページからインポートするときにWebクエリを作成することができる。
【0083】
図14は、MICROSOFT EXCEL 2002表計算プログラムにおける画面表示の例示であり、ユーザがペースト回復スマートタグドロップダウン1125(図12)において表示された「リフレッシュ可能なWebクエリの作成...」コマンド1215を選択した結果を例示する。コピー−ペーストWebクエリモジュールが、Webクエリダイアログボックス1300を表計算プログラムウィンドウ1100内で開く。Webクエリダイアログボックス1300は、現在閲覧中のWebページのURLを表示するアドレスバー1305、および、先にインターネットブラウザウィンドウ1000(図11)において開かれたWebページの内容を表示する内容ウィンドウ1310を含む。内容ウィンドウ1310は、先に選択された表データ1025(図11)を含む。Webクエリダイアログボックスは、いくつかのアイコン1315も含み、これらは、上述のように、WebクエリによってWebページに挿入された表データに関連付けられている。ユーザが、表データに関連付けられたこれらのアイコンのうちの1つまたは複数を選択し、次いで、ポインティングデバイスを使用してインポートボタン1320を選択するか、あるいはキーボードを使用することによって、インポートコマンドを呼び出すことができる。これにより、リフレッシュ可能なWebクエリを、Webページにおける表データと、MICROSOFT EXCEL 2002ワークシートの内容ウィンドウ1120においてペーストされた表データ1020の間で作成する。
【0084】
図15はMICROSOFT EXCEL 2002ウィンドウ1100(図12)における画面表示の例示であり、リフレッシュ可能なWebクエリを作成した結果を例示する。MICROSOFT EXCEL 2002ウィンドウ1100が、内容ウィンドウ1120(図12)において表示されたセル内にインポートされた表データ1030(図11)を示す。「外部データ」メニューボックス504(図5)が表データ1030に近接して表示され、「クエリの編集」ボタン506、「データ範囲プロパティ」ボタン508、「クエリパラメータ」ボタン510、「データのリフレッシュ」ボタン512、「リフレッシュの取り消し」ボタン514、「すべてのリフレッシュ」ボタン516、および「ステータスのリフレッシュ」ボタン518を含む。「データのリフレッシュ」ボタン512が選択されたとき、表データ1030が、表データを含むWebページにおいて起こったいかなる変化によっても自動的に更新される。
【0085】
図16および図17は、コピー−ペーストWebクエリモジュールを表計算プログラムに適用するための技術を例示する論理的流れ図である。図16および図17は、ルーチン1500を例示する論理的流れ図であり、これはコピー−ペーストWebクエリモジュールの動作を、リフレッシュ可能なWebクエリをMICROSOFT EXCEL 2002表計算プログラムにおいて作成するために適用するためのものである。図16および図17の論理的流れ図が処理装置21(図1)によって、WQSTユーティリティ100に組み込まれた命令に応じて実行されることは、当業者には理解されよう。
【0086】
ルーチン1500はステップ1505で開始し、インターネットブラウザにおいて開かれたWebページから選択された表データが、表計算プログラムにペーストされる。しかし、ペーストコマンドが、表データをMICROSOFT EXCEL 2002表計算プログラムにインポートするために呼び出されたとき、データは一時記憶場所に配置され、これはクリップボードとして知られる。ペースト動作が完了した後、表データがクリップボードからMICROSOFT EXCEL 2002ワークシートにおいてユーザによって選択された場所にコピーされる。表データは、ペーストコマンドの完了後にクリップボード上に残り、これにより、ユーザに、同じデータを多数回ペーストするためのオプションを可能とする。
【0087】
ステップ1505の後にステップ1510が続き、コピー−ペーストWebクエリが、クリップボードにコピーされた表データがCF_HTMLデータとしてフォーマットされるかどうかの判定を行う。CF_HTMLデータフォーマットは、典型的には、データをMICROSOFT OFFICE XPアプリケーションの間で、クリップボードを介して転送するために使用される。コピー−ペーストWebクエリモジュールはCF_HTMLフォーマットを使用するが、アプリケーションの間のデータの転送を容易にする他のフォーマットを、本発明の範囲を変更することなく使用できることは、当業者には理解されよう。表データがCF_HTMLとしてフォーマットできないという判定がなされた場合、「NO」分岐の後に「終了」ステップが続く。
【0088】
しかし、クリップボードにコピーされた表データがCF_HTMLとしてフォーマットできるという判定がなされた場合、「YES」分岐の後にステップ1515が続く。ステップ1515で、表データに関連付けられたレジストリキー、すなわち、管理レジストリキーが使用禁止に設定されたかどうかの判定がなされる。管理レジストリキーが使用禁止に設定されている場合、「YES」分岐の後に「終了」ステップが続く。
【0089】
他方では、管理レジストリキーが使用禁止に設定されていなかった場合、「NO」分岐の後にステップ1520が続き、表データが、MICROSOFT WORD、MICROSOFT PUBLISHER、MICROSOFT ACCESS、MICROSOFT POWERPOINT、またはMICROSOFT FRONTPAGEアプリケーションプログラムのような、MICROSOFT OFFICE XPアプリケーションプログラム以外のアプリケーションプログラムによって作成されたかどうかの判定がなされる。具体的には、コピー−ペーストWebクエリモジュールが、CF_HTMLのヘッダ内部の「ProgID」METAタグを検査し、これはアプリケーションプログラムソースを指定するものである。このフラグが使用可能にされている場合、これは、MICROSOFT EXCEL表計算プログラム、または、別のMICROSOFTOFFICE XPアプリケーションプログラム(すなわち、MICROSOFT WORD、MICROSOFT EXCEL 2002、MICROSOFT POWERPOINT、MICROSOFT ACCESS、またはMICROSOFT PUBLISHERプログラム)が表データを作成したことを示し、「YES」分岐の後に「終了」ステップが続く。
【0090】
しかし、識別タグが、表データが非MICROSOFT OFFICE XPアプリケーションプログラムによって作成されたことを示した場合、「NO」分岐の後にステップ1525が続き、コピー−ペーストWebクエリモジュールが、表データに関連付けられたURLが十分に形成されているか、あるいは所定の接頭辞を含むかどうかを判定する。つまり、コピー−ペーストWebクエリモジュールが、表データに関連付けられたURLの開始部分のSourceURL文字列が、「http://」、「https://」、「ftp://」または「file://」の値をURLの開始部分に含むかどうかを判定する。これにより、表データが、後でアクセスして表データを更新することができる、有効なURLに関連付けられることを保証する。ソースURLが十分に形成されていなかった場合、「NO」分岐の後に「終了」ステップが続く。ソースURLが十分に形成されていなかった場合、後にデータをリフレッシュしようとするいかなる試みも成功しないようになり、これは、正確なURLにアクセス可能とならないからである。したがって、ユーザが潜在的に挫折感を引き起こす状況に入ることを可能とする代りに、WQSTユーティリティがデータを通常の方法でインポートする。
【0091】
しかし、表データに関連付けられたURLが十分に形成されていた場合、コピー−ペーストWebクエリモジュールが「YES」分岐からステップ1530に続く。ステップ1530で、コピー−ペーストWebクエリモジュールが、「リフレッシュ可能なWebクエリの作成」オプションをペースト回復スマートタグ上に表示し、これにより、ユーザがデータを通常の方法でコピーかつペーストすることができるが、Webクエリメニューを開くこともできる。
【0092】
ステップ1530の後にステップ1535が続き、ユーザが、リフレッシュ可能なWebクエリオプションをペースト回復スマートタグから選択したかどうかについての判定がなされる。ユーザがリフレッシュ可能なWebクエリオプションをペースト回復スマートタグから選択しなかった場合、「NO」分岐の後に「終了」ステップが続く。しかし、ユーザがリフレッシュ可能なWebクエリオプションを選択したという判定がなされた場合、「YES」分岐の後にステップ1540が続き、コピー−ペーストWebクエリモジュールがWebクエリダイアログボックスを表計算アプリケーションにおいて開き、現在インターネットブラウザモジュールにおいて開かれているWebページのURLをプレロードし、これは表データがコピーされた元である。ステップ1540の後にステップ1545が続き、ユーザが、リフレッシュ可能なWebクエリを作成するために、表計算プログラムにおいてペーストされた表データの同じ、異なる、あるいは多数のインスタンスを選択する。
【0093】
ステップ1545の後にステップ1550が続き、コピー−ペーストWebクエリモジュールがリフレッシュ可能なWebクエリを作成する。リフレッシュ可能なWebクエリを作成するには、ユーザが最初に表データをWebクエリダイアログボックスから選択し、事前定義されたボタンを選択する。ユーザが、事前定義されたボタンを選択したとき、コピー−ペーストWebクエリモジュールが表データを、表計算プログラムにおいて元のペーストと同じ箇所にペーストする。コピー−ペーストWebクエリモジュールが同時に、表計算プログラムにおいてペーストされた表データと、インターネットブラウザモジュールにおける表データの間でリンクを作成する。最後に、ステップ1550の後に「終了」ステップが続く。
【0094】
図18は、図16、17におけるルーチン1550を例示する論理的流れ図であり、リフレッシュ可能なWebクエリを作成するものである。ルーチン1550は、図16、17におけるステップ1520の後に開始し、ステップ1605で開始し、Webページ上の表データの単一のインスタンスが選択されたかどうかの判定がなされる。単一の表が選択された場合、「YES」分岐の後にステップ1610が続き、リダイレクションタグがインターネットブラウザモジュールにおける表データに関連付けられているかどうかの判定がなされる。リダイレクションタグは、2000年7月21日出願の「Method For Redirecting the Source of a Data Object Displayed in an HTML Document」という名称の米国特許出願第60/220,236号において十分に記載されており、参照により本明細書に組み込む。
【0095】
リダイレクションタグが表データに関連付けられていた場合、「YES」分岐の後にステップ1615が続き、コピー−ペーストWebクエリモジュールが、リダイレクションタグを、表計算プログラムにおいてペーストされた表データに関連付ける。次いで、ステップ1615の後に「終了」ステップが続く。しかし、表データに関連付けられたリダイレクションタグがなかった場合、「NO」分岐の後にステップ1620が続く。
【0096】
ステップ1620で、コピー−ペーストWebクエリモジュールが、表データ識別子が表データに関連付けられているかどうかを判定する。典型的には、HTMLフォーマットのファイル(CF_HTMLを含む)に含まれた表データに表データ識別子が割り当てられ、これがファイル内で他の表データに相対的なその場所を識別する。表データ識別子により、他のプログラムまたはプログラマが、特定の表データを高速かつ容易にアクセスあるいは編集することができる。しかし、表データ識別子を変更あるいは削除することができるいくつかの場合がある。たとえば、表データがファイルに挿入されたとき、新たに挿入された表データの下にある表データの表データ識別子が1だけ増分される。したがって、コピー−ペーストWebクエリモジュールが、インターネットアプリケーションモジュールからコピーされた表データを見て、表データ識別子がこの表データに関連付けられているかどうかを判定する。表データ識別子がこの表データに関連付けられていた場合、「YES」分岐の後にステップ1625が続き、表データ識別子が、表計算プログラムにおいてペーストされた表データに関連付けられる。次いで、ステップ1625の後に「終了」ステップが続く。
【0097】
しかし、表データ識別子が表データに関連付けられていないという判定がなされた場合、「NO」分岐の後にステップ1630が続き、コピー−ペーストWebクエリモジュールが数値識別子を割り当て、これがインターネットブラウザモジュールからコピーされた表データに関連付けられる。HTMLフォーマットのファイルでは、インデックス番号を、常に各オブジェクトについて計算することができる。インデックス番号は、オブジェクトがファイルにおいて現れる順序に対応する。これにより、インターネットブラウザモジュールが、オブジェクトを表示上の正しい位置に配置することができる。コピー−ペーストWebクエリモジュールがこのインデックス番号を使用して、ユーザがWebページからコピーした表データを識別し、これを、表計算プログラムにおいてペーストされた表データにリンクさせることができる。したがって、リダイレクションフラグも表データ番号もWebページにおける表データに関連付けられていなかった場合、コピー−ペーストWebクエリモジュールがインデックス番号を使用して、スプレッドシートにおいてペーストされた表データを、ブラウザモジュールにおける表データとリンクさせることができる。この方法において、ユーザが表計算プログラムにおける表データを更新することを望むたびに、コピー−ペーストWebクエリモジュールが単に、関連付けられたインデックス番号を検索し、対応するURLを開き、表データをWebページから検索する。次いで、ステップ1630の後に「終了」ステップが続く。
【0098】
Microsoft Excelへエクスポートモジュール
WQSTユーティリティの第2の実施形態が、「Microsoft Excelへエクスポート」モジュールとして知られるソフトウェアモジュールにおいて埋め込まれる。Microsoft Excelへエクスポートモジュールにより、ユーザが、リフレッシュ可能なWebクエリをMICROSOFT EXCEL 2002表計算プログラムにおいて、MICROSOFT INTERNET EXPLORER Webブラウザプログラムから直接作成することができる。リフレッシュ可能なWebクエリを、「Microsoft Excelへエクスポート」モジュールを使用して作成するには、ユーザが最初にカーソルを、マウスなどのポインティングデバイスを使用して、MICROSOFT INTERNET EXPLORERブラウザプログラムにおいて開かれたWebページからの表データの上に位置付ける。次に、ユーザが右マウスボタンを押し下げてコンテキストメニューを起動し、これはオプションのコマンドの「Microsoft Excelへエクスポート」を含む。次いで、ユーザが「Microsoft Excelへエクスポート」コマンドを選択し、これが「Microsoft Excelへエクスポート」モジュールにMICROSOFTEXCEL 2002表計算プログラムを起動させ、表データ識別子を使用してリフレッシュ可能なWebクエリを作成させる。
【0099】
「Microsoft Excelへエクスポート」モジュールは、VBScriptなど、スクリプトプログラミング言語で書かれており、典型的にはMICROSOFT EXCEL 2002表計算プログラムの実行可能データファイルに存在する。このモジュールが実行可能ファイルに格納されており、意図的あるいは非意図的な、コードの改竄が防止される。しかし、このモジュールが、関数、ルーチンまたはDLLなど、実行可能コードの外部に存在できることは、当業者には理解されよう。「Microsoft Excelへエクスポート」モジュールを実施することができる、一例のVBScriptを以下に示す。
【0100】
Figure 0004972254
Figure 0004972254
Figure 0004972254
Figure 0004972254
【0101】
図19は、MICROSOFT INTERNET EXPLORERウィンドウ1000(図11)における画面表示の例示であり、「MicrosoftExcelへエクスポート」コマンドの呼び出しを例示する。「Microsoft Excelへエクスポート」コマンドは、ユーザがマウスを使用してカーソル1035を表データ1025の上に配置し、右マウスボタンを押し下げることによって呼び出される。本発明を、マウスの右ボタンを押し下げることによって起動されるとして説明するが、トラックボール、スタイラス、およびキーボードなど、他のポインティングデバイス、または、多数のボタンをサポートする他のいかなるポインティングデバイスも、「Microsoft Excelへエクスポート」モジュールを起動するために使用できることは、当業者には理解されよう。カーソル1035が表データの上に位置し、ユーザが右マウスボタンを押し下げたとき、コンテキストメニュー1700がMICROSOFT INTERNET EXPLORERウィンドウ1000内に現れる。コンテキストメニュー1700は、ユーザがMICROSOFT INTERNET EXPLORERウィンドウ1000の内容を編集できるコマンドを含む。具体的には、コンテキストメニュー1700が、コマンド「Microsoft Excelへエクスポート」1705を含む。「Microsoft Excelへエクスポート」1705コマンドが選択されたとき、「Microsoft Excelへエクスポート」モジュールがMICROSOFT EXCEL 2002を起動し、新しいワークシートを開き、表データをワークシートへリフレッシュ可能なWebクエリとしてペーストする。
【0102】
「Microsoft Excelへエクスポート」コマンド1705は、MICROSOFT INTERNET EXPLORERコンテキストメニュー1700における標準コマンドではない。したがって、「Microsoft Excelへエクスポート」コマンド1705は、「Microsoft Excelへエクスポート」モジュールを使用する前に、MICROSOFT INTERNET EXPLORERブラウザプログラムに登録しなければならない。具体的には、MICROSOFT EXCEL 2002表計算プログラムのインストレーションのとき、以下のキーがレジストリに追加される。
【0103】
HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\MenuExt\
Export to Microsoft Excel\res://<path>/300 Contexts 0x1
【0104】
ただし、「<path>」はユーザのハードドライブ上で、MICROSOFT EXCEL 2002表計算プログラムがインストールされる場所を示す。
例示的実施形態では、<path>が、「c:\program files\Microsoft office\office10\excel.exe」と指定され、これは、MICROSOFT EXCEL 2002表計算プログラムによってインストレーションのために使用されるデフォルトの場所である。
別法として、ユーザが<path>に、ハードドライブ上でMICROSOFTEXCEL 2002表計算プログラムがインストールされる場所を示す、いかなる場所も指定することができる。
【0105】
例示的実施形態では、「Microsoft Excelへエクスポート」コマンド1705をMICROSOFT INTERNET EXPLORERブラウザプログラムに登録することが、MICROSOFT EXCEL 2002表計算プログラムのインストレーション中に自動的に実行される。「Microsoft Excelへエクスポート」コマンド1705の登録を、インストレーション処理中、あるいは、「インストールウィザード」の使用を介して、あるいはユーザが最初に「Microsoft Excelへエクスポート」コマンド1705を呼び出そうと試みたとき、オプションとしてユーザへ提示することもできる。
【0106】
図20は、MICROSOFT EXCEL 2002ウィンドウにおける画面表示の例示であり、「Microsoft Excelへエクスポート」モジュールを使用して作成されたリフレッシュ可能なWebクエリを例示する。この画面表示は、先に図15において記載した画面表示に等しい。
【0107】
図21は、「Microsoft Excelへエクスポート」モジュールを、インターネットブラウザアプリケーションプログラムへ適用するためのルーチン1900を例示する、論理的流れ図である。ルーチン1900はステップ1905で開始し、ユーザが、コンテキストメニューを起動するためのコマンドを入力する。ユーザは、カーソルをアクティブなウィンドウに配置して、コントロールキーを押し下げることによって、コンテキストメニューを起動する。典型的には、ユーザがマウスなどのポインティングデバイスを使用してカーソルを位置付け、(複数のマウスボタンを有するマウスでは)右マウスボタンを押し下げることによってコンテキストメニューを起動する。ユーザは、キーまたはキーの組み合わせをキーボード上で押し下げることによって、コンテキストメニューを起動することもできる。
【0108】
コンテキストメニューが起動された後、ステップ1905の後にステップ1910が続き、「Microsoft Excelへエクスポート」モジュールが、カーソルが画像、フォームコントロール、アンカー、またはWebページ内のいずれかのテキストの上に位置付けられたかどうかを判定する。コントロールキーが押し下げられたときに、カーソルがテキストの上に位置付けられていた場合、「YES」分岐の後に「終了」ステップが続き、これは、リフレッシュ可能なWebクエリを、これらのオブジェクトの1つを使用して生成することができないからである。「Microsoft Excelへエクスポート」コマンドがコンテキストメニュー上に表示されず、これは、カーソルが表データ以外のオブジェクトの上に位置付けられたので、ユーザが表データをWebクエリにエクスポートすることを望まない、という仮定が行われるからである。
【0109】
しかし、カーソルが画像、フォームコントロール、アンカー、またはいずれかのテキストの上にないという判定がなされた場合、ユーザがオブジェクトをWebクエリにインポートすることを望む、という仮定が行われ、「NO」分岐の後にステップ1915が続く。ステップ1915で、「Microsoft Excelへエクスポート」モジュールが、「Microsoft Excelへエクスポート」するためのオプションをコンテキストメニュー上に表示する。次いで、ルーチン1900がステップ1920へ進行し、ユーザが「Microsoft Excelへエクスポート」オプションをコンテキストメニューから選択したかどうかについての判定がなされる。ユーザがこのオプションを選択した場合、「YES」分岐の後にステップ1925が続き、カーソルが表の上に位置付けられたかどうかの判定がなされる。典型的には、「Microsoft Excelへエクスポート」モジュールは、ユーザがエクスポートするために選択したオブジェクトを知るだけである。オブジェクトが表であったか、ある他のオブジェクトであったかを判定するため、「Microsoft Excelへエクスポート」モジュールがオブジェクトをDOM内に位置付け、DOMにおいて先行するあらゆる要素を検査する。DOMにおいて、<BODY>タグに達する前に<TABLE>タグに出会った場合、ユーザがMICROSOFT EXCEL表計算プログラムへエクスポートするために表を選択したという判定がなされる。この場合、「YES」分岐の後にステップ1930が続く。
【0110】
ステップ1930で、「Microsoft Excelへエクスポート」モジュールがMICROSOFT EXCEL 2002表計算プログラムを起動し、<TABLE>タグに関連付けられた表を、MICROSOFT EXCEL表計算プログラムにおける新しいワークシート内に開く。表がMICROSOFT EXCEL 2002表計算プログラムにおいて開かれた後、データをMICROSOFT EXCEL 2002表計算プログラムにエクスポートするための手順が完了し、ステップ1930の後に「終了」ステップが続く。
【0111】
ステップ1925に戻ると、ユーザが「Microsoft Excelへエクスポート」オプションをコンテキストメニューから選択したとき、カーソルを表データのインスタンスの上に位置付けていなかったという判定がなされた場合、「NO」分岐の後にステップ1935が続く。再度このステップで、「Microsoft Excelへエクスポート」モジュールが、ユーザがコンテキストメニューを呼び出したときにカーソルが上に位置付けられたオブジェクトをDOM内に位置付け、DOMにおいて先行する各要素を検査する。カーソルが表データのインスタンスの上に位置付けられなかったので、HTML文書の<BODY>タグに、いかなる<TABLE>タグに出会うよりも前に達する。
【0112】
ステップ1935で、MICROSOFT EXCEL 2002表計算プログラムが起動され、Webクエリダイアログボックスが開かれる。Webクエリダイアログボックスに、ユーザが自分のブラウザアプリケーションプログラムにおいて開いていたWebページのURLがプレロードされる。Webページ全体がWebクエリダイアログボックスにロードされ、これにより、ユーザがMICROSOFT EXCEL 2002表計算プログラムにインポートするためのオブジェクトを選択することができる。別法として、この時点で、ユーザが、Webページ全体をMICROSOFT EXCEL 2002表計算プログラム内のWebクエリにエクスポートすることを選択することができる。ユーザがWebクエリを作成した後、この動作が完了し、ステップ1935の後に「終了」ステップが続く。
【0113】
ステップ1920へ戻ると、ステップ1920で、ユーザが「Microsoft Excelへエクスポート」オプションをコンテキストメニューから選択しなかった場合、ユーザがデータをブラウザアプリケーションからMICROSOFT EXCEL 2002表計算プログラムへエクスポートすることによってWebクエリを作成することを望まなかったと仮定され、「NO」分岐の後に「終了」ステップが続く。
【0114】
同様に、ステップ1910で、ユーザがコンテキストメニューを起動したとき、カーソルが表データの上に位置付けられなかったと判定された場合、ユーザがデータをMICROSOFT EXCEL 2002表計算プログラムへエクスポートすることを望まなかったと仮定され、「Microsoft Excelへエクスポート」コマンドがコンテキストメニュー上に表示されず、「YES」分岐の後に「終了」ステップが続く。
【0115】
「Microsoft Excelで編集」モジュール
WQSTユーティリティの第3の実施形態は、「Microsoft Excelで編集」として知られるソフトウェアモジュールにおいて埋め込むことができる。「Microsoft Excelで編集」モジュールにより、ユーザがファイル全体を開くか、あるいはファイルの一部を選択して、MICROSOFT EXCEL 2002表計算プログラムにインポートして、内容を分析することができる。ユーザがHTML文書を編集すると決めたとき、典型的には、メニューバーの編集ドロップダウンメニューから編集コマンドを選択する。ドロップダウンメニューバーにより、文書が別のWeb開発プログラムにより作成された場合であっても、ユーザに、HTML文書をMICROSOFT EXCEL2002表計算プログラムにおいて編集するためのオプションを可能とする。たとえば、表データのいくつかのインスタンスを含むHTML文書が、MICROSOFT WORD文書処理プログラムなどの文書処理プログラムで作成されており、ユーザが表データの1つのインスタンスを編集することを望んだ場合、ユーザは、MICROSOFT WORDまたはMICROSOFT EXCEL 2002プログラムのいずれかを使用するためのオプションを有する。編集コマンドが呼び出された後、ユーザには、HTML文書を作成するために使用されたMICROSOFT WORDプログラムか、表データを編集するためのより堅牢なツールのセットを提供するMICROSOFT EXCEL 2002プログラムのいずれかを使用するための選択が与えられる。ユーザがMICROSOFT EXCEL 2002表計算プログラムを使用して表データを編集することを選択した場合、「Microsoft Excelで編集」モジュールが、HTML文書がMICROSOFT EXCEL 2002表計算プログラムによって作成されたか、別のWeb開発プログラムによって作成されたかを、HTML文書に関連付けられた識別タグを検査することによって判定し、これは、どのプログラムを使用してHTML文書が作成されたかを識別するものである。具体的には、「Microsoft Excelで編集」モジュールが、「Generator」という名称のHTML文書のヘッダに含まれた「Generator」METAタグの値を検査する。このMETAタグの値が、MICROSOFT EXCEL 2002表計算プログラムを使用してHTML文書が作成されたことを示した場合、「Microsoft Excelで編集」モジュールがMICROSOFT EXCEL 2002表計算プログラムを開き、自動的に表データをMICROSOFT EXCEL 2002ワークシートにインポートする。しかし、「Generator」METAタグが、MICROSOFT EXCEL 2002表計算プログラム以外のWeb開発アプリケーションプログラムを使用してHTMLファイルが作成されたことを示した場合、「Microsoft Excelで編集」モジュールがMICROSOFT EXCEL 2002表計算プログラムを起動し、新しいWebクエリダイアログボックスを開き、これにHTML文書のURLがプレロードされる。次いで、ユーザが、Webクエリにインポートするために、Webページ全体または表データの特定のインスタンスを選択することができる。
【0116】
効果的に動作するために、「Microsoft Excelで編集」モジュールが、WebブラウザプログラムおよびMICROSOFT EXCEL 2002表計算プログラムに統合される。Webブラウザプログラムにおけるドロップダウン編集コマンドは、永久的に「Microsoft Excelで編集」オプションを表示しなければならず、表計算プログラムは、「新しいWebクエリ?(New Web Query?)」という名称の新しいDDEオペレーションをサポートしなければならず、これは、「Microsoft Excelで編集」コマンドによって呼び出されたとき、新しいWebクエリダイアログボックスを開き、HTML文書のURLへ事前にナビゲートする。「Microsoft Excelで編集」モジュールは、以下のキーをレジストリに追加して、新しいDDE機能をサポートする。
【0117】
Figure 0004972254
【0118】
図22は、MICROSOFT INTERNET EXPLORERウィンドウ1000(図11)における画面表示の例示であり、ユーザが「Microsoft Excelで編集」コマンドを呼び出す結果を例示する。例示では、MICROSOFT INTERNET EXPLORERウィンドウ1000の閲覧領域1020が、表データ1025を含むWebページを含む。例示では、メニューバー1010から編集コマンドが選択されており、これによりドロップダウン編集メニュー2000が表示されている。ドロップダウン編集メニュー2000は、Webページを編集するためのいくつかのコマンドを含む。具体的には、ドロップダウン編集メニュー2000が「Microsoft Excelで編集」コマンド2005、「Microsoft FrontPageで編集(Edit with Microsoft FrontPage)」コマンド2010、「Windows(登録商標) Notepadで編集(Edit with Windows(登録商標) Notepad)」コマンド2015、および「Microsoft Wordで編集(Edit with Microsoft Word)」コマンド2020を含む。典型的には、編集メニューの下で、表示されるコマンドは「アプリケーションプログラムで編集(Editwith application program)」となり、アプリケーションプログラムは、Webページを作成あるいは修正するために使用することができるアプリケーションプログラムの名前となる。
【0119】
図23は、MICROSOFT EXCEL 2002ウィンドウ1100(図12)における画面表示の例示であり、ユーザが「Microsoft Excelで編集」コマンド2005オプションをドロップダウン編集メニュー2000(図22)から選択した結果を示す。例示では、新しいWebクエリダイアログボックスが開かれ、WebサイトのURLがアドレスバーにプレロードされる。この時点で、ユーザが、MICROSOFT EXCEL 2002ワークシートにインポートするために、Webページ全体または表データの個々のインスタンスを選択することができる。
【0120】
図24は、MICROSOFT EXCEL 2002表計算プログラムにおける画面表示の例示であり、リフレッシュ可能なWebクエリを、「Microsoft Excelで編集」モジュールを使用して作成した結果を示す。この画面表示は、図15において前述した画面表示に等しい。
【0121】
図25は、「Microsoft Excelで編集」モジュールをインターネットブラウザアプリケーションプログラムに適用するためのルーチン2300を例示する論理的流れ図である。ルーチン2300はステップ2305で開始し、「Microsoft Excelで編集」モジュールが、表計算プログラムを使用してHTML文書を編集するためのユーザコマンドを受信する。次いで、ルーチン2300がステップ2310へ進行し、「Microsoft Excelで編集」モジュールが、ユーザが編集したいHTML文書が表計算プログラムにより作成されたかどうかを判定する。「Microsoft Excelで編集」モジュールが、識別タグをHTML文書の先頭のセクションから検索し、これが、HTML文書を作成するために使用されたアプリケーションプログラムを識別する。具体的には、「Microsoft Excelで編集」モジュールが、METAタグを先頭のセクションから検索し、これが、ファイルを作成するために使用されたアプリケーションプログラムを識別する。METAタグが、MICROSOFT EXCEL 2002表計算プログラムを使用してHTML文書が作成されたことを示す値を有した場合、「YES」分岐の後にステップ2315が続き、「Microsoft Excelで編集」モジュールがMICROSOFT EXCEL 2002表計算プログラムを起動し、HTML文書をMICROSOFT EXCEL 2002ワークシートに直接インポートする。次いで、ステップ2315の後に「終了」ステップが続く。
【0122】
しかし、文書処理プログラムなど、別のアプリケーションプログラムを使用してHTML文書が作成された場合、リフレッシュ可能なWebクエリを自動的に作成することができない。ステップ2310から「NO」分岐の後にステップ2320が続き、「Microsoft Excelで編集」モジュールがMICROSOFT EXCEL 2002表計算プログラムを起動し、新しいWebクエリダイアログボックスを開く。Webクエリダイアログボックスに、ユーザが表データを選択した元のHTML文書のURLがプレロードされる。次いで、ユーザが表データを再選択し、MICROSOFT EXCEL 2002表計算プログラムにインポートする。
【0123】
このように、本発明は、ユーザがリフレッシュ可能なWebクエリを作成するためのいかなる事前の知識も有する必要がなく、容易にリフレッシュ可能なWebクエリを作成するための、インターネットブラウザモジュールと表計算プログラム間の、統合された方法を提供する。
【0124】
前述のものが本発明の例示的実施形態にのみ関係し、多数の変更を、本発明の趣旨および範囲から逸脱することなく、本明細書に記載された実施形態に行うことができることを理解されたい。
【図面の簡単な説明】
【図1】本発明の一実施形態のための動作環境を提供するパーソナルコンピュータのブロック図である。
【図2】MICROSOFT EXCEL 2002表計算プログラム、Webブラウザコントロール、およびWebブラウザコンポーネントの間の相互依存関係を例示するダイアログボックスのブロック図である。
【図3】MICROSOFT EXCEL 2002表計算プログラムウィンドウにおけるWebクエリダイアログボックスの画面表示の図である。
【図4】ユーザがカーソルを、MICROSOFT EXCEL 2002ワークシートへインポートするための表データに関連付けられたアイコンの上に位置付けた後の、Webクエリダイアログボックスの画面表示の図である。
【図5】表データをWebページからインポートした後の、MICROSOFT EXCEL 2002表計算プログラムワークシートの画面表示の図である。
【図6】新しいWebクエリを作成するか、既存のWebクエリを編集するかを判定するための、例示的技術を説明する論理的流れ図である。
【図7】MICROSOFT EXCEL 2002表計算プログラムへWebクエリとしてインポートするための表データを、Webページからグラフィカルに選択するための例示的技術を説明する論理的流れ図である。
【図8】MICROSOFT EXCEL 2002表計算プログラムへWebクエリとしてインポートするための表データを、Webページからグラフィカルに選択するための例示的技術を説明する論理的流れ図である。
【図9】Webクエリを作成するためのWebページ上の表データの、絶対位置を計算するための、例示的技術を説明する論理的流れ図である。
【図10】Webクエリを作成するための表データのインスタンスをグラフィカルに選択するための、例示的技術を説明する論理的流れ図である。
【図11】インターネットブラウザモジュールにおいて開かれたWebページにおける、表データの選択を説明する画面表示の図である。
【図12】Webページにおいて選択された、MICROSOFT EXCEL 2002表計算プログラムワークシートにペースト中である表データの画面表示の図である。
【図13】ドロップダウンメニューにおいてユーザに表示された、Webクエリを作成するためのオプションを説明する画面表示の図である。
【図14】MICROSOFT EXCEL 2002表計算プログラムにおいて開かれたWebクエリダイアログボックスの画面表示であり、選択された表データを含むWebページを説明する図である。
【図15】データをMICROSOFT EXCEL 2002ワークシートへ、リフレッシュ可能なWebクエリとしてインポートした結果を説明する画面表示の図である。
【図16】リフレッシュ可能なWebクエリ(Refreshable Web Query)ユーティリティをMICROSOFT EXCEL 2002表計算プログラムに適用するための、コピー−ペーストWebクエリモジュールの例示的技術を説明する論理的流れ図である。
【図17】リフレッシュ可能なWebクエリユーティリティをMICROSOFT EXCEL 2002表計算プログラムに適用するための、コピー−ペーストWebクエリモジュールの例示的技術を説明する論理的流れ図である。
【図18】リフレッシュ可能なWebクエリを作成するための例示的技術を説明する論理的流れ図である。
【図19】インターネットブラウザモジュールにおいて開かれたWebページにおける表データのための、「Microsoft Excelへエクスポート」コマンドの選択のスクリーンショットを説明する画面表示の図である。
【図20】リフレッシュ可能なWebクエリユーティリティの「Microsoft Excelへエクスポート」モジュールが、表データをMICROSOFT EXCEL 2002ワークシートに挿入することを完了した後の、スクリーンショットを説明する画面表示の図である。
【図21】リフレッシュ可能なWebクエリユーティリティを表計算プログラムに適用するための、「Microsoft Excelへエクスポート」モジュールの例示的技術を説明する論理的流れ図である。
【図22】「Microsoft Excelで編集」コマンドを、インターネットブラウザモジュールにおけるドロップダウン編集メニューから使用した、リフレッシュ可能なWebクエリの作成の画面表示の図である。
【図23】ユーザが「Microsoft Excelで編集」コマンドを選択した結果を説明する、MICROSOFT EXCEL 2002スプレッドシートの画面表示の図である。
【図24】リフレッシュ可能なWebクエリを、「Microsoft Excelで編集」モジュールを使用して作成した結果を示す、MICROSOFT EXCEL 2002表計算プログラムにおける画面表示の例示の図である。
【図25】リフレッシュ可能なWebクエリユーティリティをMICROSOFT EXCEL 2002表計算プログラムに適用するための、「Microsoft Excelで編集」モジュールの例示的技術を説明する論理的流れ図である。
【符号の説明】
210、325、1015、1305 アドレスバー
315、1310、1120 内容ウィンドウ
1000 インターネットブラウザウィンドウ
1020、1025、1030 表データ
1035 カーソル
1100 表計算プログラムウィンドウ
1125 ペーストの回復スマートタグ
1215 リフレッシュ可能なWebクエリの作成...」コマンド
1300 Webクエリダイアログボックス
1315 アイコン、インポートボタン

Claims (13)

  1. コンピュータが表データオブジェクトを、Webブラウザプログラム内で開かれた第1の電子ファイルから、表計算アプリケーションプログラム内で開かれた第2の電子ファイルにコピーすることによって、表計算アプリケーションプログラム内で、Webクエリを作成する方法であって、コンピュータが、
    Webブラウザプログラム内で第1の電子ファイルを開くステップと、
    コンピュータへのユーザ入力に基づき、第2の電子ファイルにコピーされる表データオブジェクトを特定するステップと、
    特定された表データオブジェクトを、第1の電子ファイルから、表計算アプリケーションプログラム内で開かれた第2の電子ファイルへペーストするステップと、
    第1のコンピュータコマンドが表示されるべきであるかどうかを判定するステップと、
    第1のコンピュータコマンドが表示されるべきであると判定することに応答して、第1のコンピュータコマンドを、表計算アプリケーションプログラムに関連付けられたドロップダウンメニュー内に挿入するステップと、
    コンピュータへのユーザ入力に基づき、第1のコンピュータコマンドを特定するステップと、
    第1の電子ファイルを含むWebブラウザプログラムを、表計算プログラムにおいて開かれたWebクエリダイアログボックス内で起動するステップと、
    コンピュータへのユーザ入力に基づき、Webクエリを作成するために、表データオブジェクトをWebクエリダイアログボックス内で起動されたWebブラウザプログラムから特定するステップと
    を備えたこと特徴とする方法。
  2. 第1のコンピュータコマンドが表示されるべきであるかどうかを判定するステップは、
    特定された表データオブジェクトが第1のフォーマットであるかどうかを判定するステップと、
    特定された表データオブジェクトが第1のフォーマットであるという判定がなされた場合、
    表データオブジェクトに関連付けられた第1の識別子タグが、第1の値に設定されているかどうかを判定するステップと、
    識別子タグが第1の値に設定されている場合、第2のシーケンスを実行するステップとを備え、
    前記第2のシーケンスを実行するステップは、
    表データオブジェクトに関連付けられたURLを検索するステップと、
    URLが第2の識別子タグを含むかどうかを判定するステップと
    を備えたこと特徴とする請求項1に記載の方法。
  3. 第1のコンピュータコマンドは、リフレッシュ可能なWebクエリの作成コマンドであることを特徴とする請求項2に記載の方法。
  4. 第1の識別子タグは、データオブジェクトを作成したアプリケーションプログラムを識別するMETAタグであることを特徴とする請求項2に記載の方法。
  5. 第2の識別子タグは、本質的にhttp://、https://、ftp://、およびfile://からなるグループから選択されることを特徴とする請求項2に記載の方法。
  6. 第1のフォーマットはCF_HTMLフォーマットを備えたこと特徴とする請求項2に記載の方法。
  7. コンピュータが、
    リダイレクション識別子タグが、第1の電子ファイルにおける表データオブジェクトに関連付けられているかどうかを判定するステップと、
    リダイレクション識別子タグが、第1の電子ファイルにおける表データオブジェクトに関連付けられている場合、リダイレクション識別子タグを、第2の電子ファイル内にペーストされた表データオブジェクトに関連付けるステップと、
    リダイレクション識別子タグが表データに関連付けられていない場合、表データオブジェクト識別子が、第1の電子ファイルにおける表データオブジェクトに関連付けられているかどうかを判定するステップと、
    表データオブジェクト識別子が、第1の電子ファイルにおける表データオブジェクトに関連付けられている場合、表データオブジェクト識別子を、第2の電子ファイルにおける表データオブジェクトに関連付けるステップと、
    数値識別子を第2の電子ファイルにおける表データオブジェクトに関連付けるステップであって、数値識別子は、第1の電子ファイルにおける表データオブジェクトの位置を指示するステップと
    をさらに備えたことを特徴とする請求項1に記載の方法
  8. 複数のデータオブジェクトを、Webブラウザプログラム内で開かれた第1の電子ファイルから、表計算プログラム内で開かれた第2の電子ファイルにコピーすることによって、Webクエリを作成するためのコンピュータ実行可能命令を有するコンピュータ可読記録媒体であって、コンピュータに、
    第1の電子ファイルをWebブラウザプログラム内で開くステップと、
    第2の電子ファイルにコピーされる複数のデータオブジェクトの選択を受信するステップと、
    複数のデータを第1の電子ファイルから、第2のアプリケーションプログラム内で開かれた第2の電子ファイルへコピーするための、ユーザコマンドを受信するステップと、
    複数のデータをコピーするためのユーザコマンドを受信したとき、第1のシーケンスを実行するステップとを備え、
    前記第1のシーケンスを実行するステップは、
    複数のデータが第1のフォーマットを含むかどうかを判定するステップと、
    複数のデータが第1のフォーマットを含むと判定したとき、
    複数のデータに関連付けられた識別子タグが第1の値に設定されているかどうかを判定するステップと、
    識別子タグが第1の値に設定されている場合、第2のシーケンスを実行するステップとを備え、
    前記第2のシーケンスを実行するステップは、
    複数のデータに関連付けられたURLを検索するステップと、
    URLが第2の識別子タグを含むかどうかを判定するステップと、
    URLが第2の識別子タグを含む場合、複数のデータを第1の電子ファイルから第2の電子ファイルへコピーするステップと
    を実行させるためのコンピュータ実行可能命令を備えたこと特徴とするコンピュータ可読記録媒体
  9. 第1のコンピュータコマンドは、リフレッシュ可能なWebクエリの作成コマンドであることを特徴とする請求項8に記載のコンピュータ可読記録媒体
  10. 第1の識別子タグは、複数のデータオブジェクトを作成したアプリケーションプログラムを識別するMETAタグであることを特徴とする請求項8に記載のコンピュータ可読記録媒体
  11. 第2の識別子タグは、本質的にhttp://、https://、ftp://、およびfile://からなるグループから選択されることを特徴とする請求項8に記載のコンピュータ可読記録媒体
  12. 第1のフォーマットはCF_HTMLフォーマットを備えたこと特徴とする請求項8に記載のコンピュータ可読記録媒体
  13. 複数のデータオブジェクトは表データオブジェクトを備えたこと特徴とする請求項8に記載のコンピュータ可読記録媒体。
JP2001222247A 2000-07-21 2001-07-23 リフレッシュ可能なWebクエリを作成するための統合された方法 Expired - Lifetime JP4972254B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US22023900P 2000-07-21 2000-07-21
US09/819176 2001-03-27
US09/819,176 US6948134B2 (en) 2000-07-21 2001-03-27 Integrated method for creating a refreshable Web Query
US60/220239 2001-03-27

Publications (3)

Publication Number Publication Date
JP2002189595A JP2002189595A (ja) 2002-07-05
JP2002189595A5 JP2002189595A5 (ja) 2008-09-04
JP4972254B2 true JP4972254B2 (ja) 2012-07-11

Family

ID=26914688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001222247A Expired - Lifetime JP4972254B2 (ja) 2000-07-21 2001-07-23 リフレッシュ可能なWebクエリを作成するための統合された方法

Country Status (4)

Country Link
US (3) US6948134B2 (ja)
JP (1) JP4972254B2 (ja)
DE (1) DE10135445B4 (ja)
GB (1) GB2368941B (ja)

Families Citing this family (156)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020138512A1 (en) * 2000-11-17 2002-09-26 William Buresh Flexible form and window arrangement for the display of medical data
US7437377B1 (en) * 2001-03-30 2008-10-14 Unisys Corporation Method and apparatus for dynamically generating multi-level hierarchical lists for web-based applications or web-sites
JP4684536B2 (ja) * 2001-05-08 2011-05-18 ユナイテッド パーセル サービス オブ アメリカ インコーポレイテッド 運送業者および小包み配送デスクトップツール
TW526430B (en) * 2001-06-29 2003-04-01 Inventec Corp Method for generating dynamically editable table on web page
US7379977B2 (en) * 2001-07-24 2008-05-27 Steve Walrath System and method for display of multiple electronic pages
US7058653B2 (en) * 2001-09-17 2006-06-06 Ricoh Company, Ltd. Tree system diagram output method, computer program and recording medium
JP2003241879A (ja) * 2002-02-14 2003-08-29 Sharp Corp 情報処理システム
US20030214539A1 (en) * 2002-05-14 2003-11-20 Microsoft Corp. Method and apparatus for hollow selection feedback
US7484170B2 (en) * 2002-07-11 2009-01-27 International Business Machines Corporation System and method for formatting source text files to be imported into a spreadsheet file
US20040032420A1 (en) * 2002-08-13 2004-02-19 Allen Bradley J. Interactive benchmarking system
US20040133441A1 (en) * 2002-09-04 2004-07-08 Jeffrey Brady Method and program for transferring information from an application
EP1398717A1 (en) * 2002-09-11 2004-03-17 Atsmai Technology Data refreshing process for a computer application
AU2002951709A0 (en) * 2002-09-26 2002-10-17 Canon Information Systems Research Australia Pty Ltd Efficient printing of frames pages
US7293242B2 (en) * 2002-10-15 2007-11-06 International Business Machines Corporation Facilitated source to target object editing functions
US7665030B2 (en) * 2002-11-05 2010-02-16 Sap Aktiengesellschaft Tabstrip user interface element for formulating boolean statements
US7007229B2 (en) * 2003-04-11 2006-02-28 Sas Institute Inc. Computer-implemented system and method for web-based data access
US7624372B1 (en) * 2003-04-16 2009-11-24 The Mathworks, Inc. Method for integrating software components into a spreadsheet application
US9715678B2 (en) 2003-06-26 2017-07-25 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US7707255B2 (en) 2003-07-01 2010-04-27 Microsoft Corporation Automatic grouping of electronic mail
US8799808B2 (en) 2003-07-01 2014-08-05 Microsoft Corporation Adaptive multi-line view user interface
US7363581B2 (en) * 2003-08-12 2008-04-22 Accenture Global Services Gmbh Presentation generator
US20080215370A1 (en) * 2003-10-24 2008-09-04 Iclops, Llc System and Method for Providing Remote Users with Reports and Analyses Based on User Data and Adaptable Reporting with the Ability to Alter, Modify or Augment Such Reports and Analyses through Web-Based Technology
US20080196108A1 (en) * 2003-10-24 2008-08-14 Iclops,Llc System and method for providing remote users with reports and analyses based on user data and adaptable reporting with the ability to alter, modify or augment such reports and analyses through web-based technology
US7340685B2 (en) * 2004-01-12 2008-03-04 International Business Machines Corporation Automatic reference note generator
US7478317B2 (en) * 2004-02-12 2009-01-13 International Business Machines Corporation Method and apparatus for presenting a summary of selected values
US7693825B2 (en) * 2004-03-31 2010-04-06 Google Inc. Systems and methods for ranking implicit search results
US8041713B2 (en) 2004-03-31 2011-10-18 Google Inc. Systems and methods for analyzing boilerplate
US7707142B1 (en) 2004-03-31 2010-04-27 Google Inc. Methods and systems for performing an offline search
US7272601B1 (en) 2004-03-31 2007-09-18 Google Inc. Systems and methods for associating a keyword with a user interface area
US7664734B2 (en) 2004-03-31 2010-02-16 Google Inc. Systems and methods for generating multiple implicit search queries
US20080040315A1 (en) * 2004-03-31 2008-02-14 Auerbach David B Systems and methods for generating a user interface
US8631001B2 (en) 2004-03-31 2014-01-14 Google Inc. Systems and methods for weighting a search query result
US9009153B2 (en) 2004-03-31 2015-04-14 Google Inc. Systems and methods for identifying a named entity
US9213714B1 (en) * 2004-06-22 2015-12-15 Apple Inc. Indicating hierarchy in a computer system with a graphical user interface
US7873916B1 (en) * 2004-06-22 2011-01-18 Apple Inc. Color labeling in a graphical user interface
US8131754B1 (en) 2004-06-30 2012-03-06 Google Inc. Systems and methods for determining an article association measure
US7788274B1 (en) * 2004-06-30 2010-08-31 Google Inc. Systems and methods for category-based search
US20060010367A1 (en) * 2004-07-09 2006-01-12 Juergen Sattler System and method for spreadsheet data integration
US20060026137A1 (en) * 2004-07-09 2006-02-02 Juergen Sattler Method and apparatus for integrating a list of selected data entries into a spreadsheet
US20060010118A1 (en) * 2004-07-09 2006-01-12 Juergen Sattler System and method for role-based spreadsheet data integration
US9015621B2 (en) 2004-08-16 2015-04-21 Microsoft Technology Licensing, Llc Command user interface for displaying multiple sections of software functionality controls
US7703036B2 (en) * 2004-08-16 2010-04-20 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US7895531B2 (en) 2004-08-16 2011-02-22 Microsoft Corporation Floating command object
US8255828B2 (en) * 2004-08-16 2012-08-28 Microsoft Corporation Command user interface for displaying selectable software functionality controls
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US8271866B2 (en) * 2004-08-19 2012-09-18 International Business Machines Corporation User-controlled web browser table reduction
US7747966B2 (en) 2004-09-30 2010-06-29 Microsoft Corporation User interface for providing task management and calendar information
US7499928B2 (en) * 2004-10-15 2009-03-03 Microsoft Corporation Obtaining and displaying information related to a selection within a hierarchical data structure
US7716231B2 (en) * 2004-11-10 2010-05-11 Microsoft Corporation System and method for generating suggested alternatives for visual or audible submissions
US9009582B2 (en) 2004-11-19 2015-04-14 Google Inc. Converting spreadsheet applications to web-based applications
US7594165B2 (en) * 2005-01-11 2009-09-22 International Business Machines Corporation Embedded ad hoc browser web to spreadsheet conversion control
US7788594B1 (en) * 2005-01-19 2010-08-31 Apple Inc. Methods and apparatuses for inputting information
US20060184899A1 (en) * 2005-02-11 2006-08-17 Research In Motion Limited System and method for context specific content handling
USD530338S1 (en) * 2005-04-22 2006-10-17 Microsoft Corporation Image for a portion of a display screen
USD529919S1 (en) * 2005-04-22 2006-10-10 Microsoft Corporation Image for a portion of a display screen
US20060248443A1 (en) * 2005-04-27 2006-11-02 Sap Aktiengesellschaft System and method for exporting spreadsheet data
US9275025B2 (en) * 2005-04-29 2016-03-01 Adobe Systems Incorporated Interactive special paste
US7725476B2 (en) 2005-06-14 2010-05-25 International Business Machines Corporation System and method for automated data retrieval based on data placed in clipboard memory
US8239882B2 (en) * 2005-08-30 2012-08-07 Microsoft Corporation Markup based extensibility for user interfaces
US8689137B2 (en) * 2005-09-07 2014-04-01 Microsoft Corporation Command user interface for displaying selectable functionality controls in a database application
US9542667B2 (en) 2005-09-09 2017-01-10 Microsoft Technology Licensing, Llc Navigating messages within a thread
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
US7779343B2 (en) * 2006-01-30 2010-08-17 Microsoft Corporation Opening network-enabled electronic documents
US7653731B2 (en) * 2006-02-24 2010-01-26 Microsoft Corporation Management of connections to external data
US8307119B2 (en) 2006-03-31 2012-11-06 Google Inc. Collaborative online spreadsheet application
US8605090B2 (en) 2006-06-01 2013-12-10 Microsoft Corporation Modifying and formatting a chart using pictorially provided chart elements
US9727989B2 (en) 2006-06-01 2017-08-08 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US20080046861A1 (en) * 2006-08-15 2008-02-21 Grieser Maria A Method and interface for creating a workbook to implement a business process
CN101127034B (zh) * 2006-08-18 2012-05-23 国际商业机器公司 数据组织、查询、呈现、存档、恢复、删除、提炼方法及装置和系统
US20080154863A1 (en) * 2006-12-08 2008-06-26 Renny Goldstein Search engine interface
US10156953B2 (en) * 2006-12-27 2018-12-18 Blackberry Limited Method for presenting data on a small screen
US8099386B2 (en) * 2006-12-27 2012-01-17 Research In Motion Limited Method and apparatus for synchronizing databases connected by wireless interface
US8275741B2 (en) * 2006-12-27 2012-09-25 Research In Motion Limited Method and apparatus for memory management in an electronic device
US20080162486A1 (en) * 2006-12-27 2008-07-03 Research In Motion Limited Method and apparatus for storing data from a network address
US9015572B2 (en) * 2006-12-28 2015-04-21 Apple Inc. Grouping tables
US7917507B2 (en) * 2007-02-12 2011-03-29 Microsoft Corporation Web data usage platform
US8429185B2 (en) 2007-02-12 2013-04-23 Microsoft Corporation Using structured data for online research
US7941497B2 (en) * 2007-02-22 2011-05-10 Research In Motion Limited Community-based method and system for creating and subscribing to dynamic push channels
US9058370B2 (en) * 2007-02-27 2015-06-16 International Business Machines Corporation Method, system and program product for defining imports into and exports out from a database system using spread sheets by use of a control language
US8196101B1 (en) * 2007-04-23 2012-06-05 Sandia Corporation Reach and get capability in a computing environment
US8555186B2 (en) * 2007-05-08 2013-10-08 Adobe Systems Incorporated Interactive thumbnails for transferring content among electronic documents
US7747657B2 (en) * 2007-06-08 2010-06-29 International Business Machines Corporation Mapping hierarchical data from a query result into a tabular format with jagged rows
US20090006967A1 (en) * 2007-06-26 2009-01-01 Microsoft Corporation Live copy-paste
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US8201103B2 (en) 2007-06-29 2012-06-12 Microsoft Corporation Accessing an out-space user interface for a document editor program
US8762880B2 (en) 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
US8336097B2 (en) * 2007-10-12 2012-12-18 Electronics And Telecommunications Research Institute Apparatus and method for monitoring and protecting system resources from web browser
US8407668B2 (en) * 2007-10-26 2013-03-26 Microsoft Corporation Model based spreadsheet scripting language
US9588781B2 (en) * 2008-03-31 2017-03-07 Microsoft Technology Licensing, Llc Associating command surfaces with multiple active components
US9507651B2 (en) * 2008-04-28 2016-11-29 Microsoft Technology Licensing, Llc Techniques to modify a document using a latent transfer surface
US9665850B2 (en) 2008-06-20 2017-05-30 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US8402096B2 (en) 2008-06-24 2013-03-19 Microsoft Corporation Automatic conversation techniques
EP2335450A1 (en) * 2008-10-08 2011-06-22 Research In Motion Limited Modifying the appearance of a movable position-marker on a display screen of a handheld electronic communication device
US9213979B2 (en) * 2008-12-17 2015-12-15 Oracle International Corporation Array attribute configurator
US8412749B2 (en) 2009-01-16 2013-04-02 Google Inc. Populating a structured presentation with new values
US8452791B2 (en) * 2009-01-16 2013-05-28 Google Inc. Adding new instances to a structured presentation
US8615707B2 (en) * 2009-01-16 2013-12-24 Google Inc. Adding new attributes to a structured presentation
US20100185651A1 (en) * 2009-01-16 2010-07-22 Google Inc. Retrieving and displaying information from an unstructured electronic document collection
US8977645B2 (en) * 2009-01-16 2015-03-10 Google Inc. Accessing a search interface in a structured presentation
US8799353B2 (en) 2009-03-30 2014-08-05 Josef Larsson Scope-based extensibility for control surfaces
US9046983B2 (en) 2009-05-12 2015-06-02 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries
US20110106819A1 (en) * 2009-10-29 2011-05-05 Google Inc. Identifying a group of related instances
US20100306223A1 (en) * 2009-06-01 2010-12-02 Google Inc. Rankings in Search Results with User Corrections
US10001977B1 (en) * 2009-06-05 2018-06-19 The Mathworks, Inc. System and method for identifying operations based on selected data
US8676808B2 (en) 2009-07-09 2014-03-18 Dillon Software Services, Llc Data store interface that facilitates distribution of application functionality across a multi-tier client-server architecture
US9330139B2 (en) * 2009-11-18 2016-05-03 Blackberry Limited Automatic reuse of user-specified content in queries
US9489366B2 (en) * 2010-02-19 2016-11-08 Microsoft Technology Licensing, Llc Interactive synchronization of web data and spreadsheets
EP2558956B1 (en) * 2010-04-12 2019-06-12 Google LLC Synthetic navigation elements for electronic documents
TWI438675B (zh) * 2010-04-30 2014-05-21 Ibm 提供情境感知援助說明之方法、裝置及電腦程式產品
US8302014B2 (en) 2010-06-11 2012-10-30 Microsoft Corporation Merging modifications to user interface components while preserving user customizations
US9747270B2 (en) 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
US20120078874A1 (en) * 2010-09-27 2012-03-29 International Business Machine Corporation Search Engine Indexing
JP5630863B2 (ja) 2010-11-26 2014-11-26 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 構造化文書に含まれるノードの全順序関係を、ログ情報に基づいて決定して可視化する方法、装置及びコンピュータプログラム
CN102760118B (zh) * 2011-04-25 2015-06-03 中兴通讯股份有限公司 一种将数据导出为Excel文件的方法及装置
KR20120132069A (ko) * 2011-05-27 2012-12-05 삼성전자주식회사 다중 선택 및 다중 붙이기를 이용한 텍스트 편집을 위한 방법 및 장치
US8677230B2 (en) 2011-09-15 2014-03-18 Morgan Stanley Network-based data consolidation, calculation and reporting engine
WO2013049713A1 (en) * 2011-09-30 2013-04-04 Cirro, Inc. Spreadsheet based data store interface
USD678301S1 (en) * 2012-01-30 2013-03-19 Microsoft Corporation Display screen with animated graphical user interface
USD681045S1 (en) * 2012-02-03 2013-04-30 Microsoft Corporation Display screen with graphical user interface
USD677683S1 (en) * 2012-02-03 2013-03-12 Microsoft Corporation Display screen with graphical user interface
USD677682S1 (en) * 2012-02-03 2013-03-12 Microsoft Corporation Display screen with graphical user interface
JP6093432B2 (ja) * 2012-03-13 2017-03-08 マイクロソフト コーポレーション ウェブ・ページ・アプリケーション制御
US20130263098A1 (en) * 2012-03-29 2013-10-03 Pawel Piotr Duda Method and system for testing of mobile web sites
US10664652B2 (en) 2013-06-15 2020-05-26 Microsoft Technology Licensing, Llc Seamless grid and canvas integration in a spreadsheet application
US20150019595A1 (en) * 2013-07-15 2015-01-15 International Business Machines Corporation Interactive format manipulation and replication
US10282407B1 (en) * 2013-08-21 2019-05-07 The United States Of America, As Represented By The Secretary Of The Navy Method for filtering data to generate a balance sheet
US9977772B1 (en) * 2013-09-24 2018-05-22 Mehrdad Samadani Method and system for cellular text processor and display
CN103810238A (zh) * 2013-11-20 2014-05-21 国家电网公司 一种基于异步处理的大数据量Excel文件导出方法
US9626351B2 (en) * 2013-11-26 2017-04-18 Oracle International Corporation Status viewer
US9646004B2 (en) * 2014-01-15 2017-05-09 Software Ag Hierarchical database report generation with automated query generation for placeholders
KR20150126213A (ko) * 2014-05-02 2015-11-11 삼성전자주식회사 정보 검색 시스템 및 방법
US9983869B2 (en) 2014-07-31 2018-05-29 The Mathworks, Inc. Adaptive interface for cross-platform component generation
US10430500B2 (en) 2014-09-09 2019-10-01 Intentional Software Corporation Detecting and animating a change in position of a visual layout node of a visual layout tree
US11003833B2 (en) 2014-09-09 2021-05-11 Microsoft Technology Licensing, Llc Adding visual description nodes to a visual description tree during layout
US10402478B2 (en) 2014-09-09 2019-09-03 Intentional Software Corporation Linking visual layout nodes of a visual layout tree using positioning pointers
US10353991B2 (en) 2014-09-09 2019-07-16 Intentional Software Corporation Generating a visual description tree based on a layout interruption record
US10387540B2 (en) * 2014-09-09 2019-08-20 Intentional Software Corporation Generating a visual layout tree using caching techniques
US10387547B2 (en) 2014-09-09 2019-08-20 Intentional Software Corporation Layout engine for creating a visual layout tree for a document
US20170116194A1 (en) 2015-10-23 2017-04-27 International Business Machines Corporation Ingestion planning for complex tables
US10387558B2 (en) * 2016-02-23 2019-08-20 International Business Machines Corporation Provision of a separate input interface for user interaction with a spreadsheet
US10203852B2 (en) 2016-03-29 2019-02-12 Microsoft Technology Licensing, Llc Content selection in web document
WO2017206717A1 (zh) * 2016-06-01 2017-12-07 腾讯科技(深圳)有限公司 信息创建方法、装置、信息发送方法、装置及存储介质
CN108268455B (zh) * 2016-12-30 2021-08-20 珠海金山办公软件有限公司 一种多媒体信息显示方法及装置
US20180302393A1 (en) * 2017-04-18 2018-10-18 HFA Group Parameterized data delivery system for a spreadsheet application
US20180367597A1 (en) * 2017-06-15 2018-12-20 Ramakrishnan Kolli Method and System of Sharing a File
CN107329756B (zh) * 2017-06-29 2020-06-26 网易(杭州)网络有限公司 程序文件的生成方法、装置、存储介质、处理器和终端
US11182548B2 (en) 2017-07-10 2021-11-23 Adaptam Inc. Methods and systems for providing selective multi-way replication and atomization of cell blocks and other elements in spreadsheets and presentations
US11036929B2 (en) 2017-11-15 2021-06-15 Adaptam Inc. Methods and systems for connecting a spreadsheet to external data sources with ordered formulaic use of data retrieved
EP3748493B1 (en) * 2018-03-28 2023-04-05 Huawei Technologies Co., Ltd. Method and device for downloading installation-free application
CN109753610A (zh) * 2019-01-29 2019-05-14 百度在线网络技术(北京)有限公司 技能的分享方法和装置
US11836444B2 (en) 2020-06-26 2023-12-05 Adaptam Inc. Methods and systems for constructing a complex formula in a spreadsheet cell
CN112637039B (zh) * 2020-07-24 2021-11-02 腾讯科技(深圳)有限公司 一种信息处理方法、装置及存储介质
US11977835B2 (en) 2021-05-24 2024-05-07 Adaptam Inc. Method and system for spreadsheet error identification and avoidance
US20230229850A1 (en) * 2022-01-14 2023-07-20 Microsoft Technology Licensing, Llc Smart tabular paste from a clipboard buffer
US20250148039A1 (en) * 2023-11-02 2025-05-08 Sap Se Generic web page extraction and data comparison framework
US20250156573A1 (en) * 2023-11-10 2025-05-15 Servicenow, Inc. Automated File Information Population Exhibiting Reduced Storage and Bandwidth and Increased Security

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5293615A (en) * 1990-11-16 1994-03-08 Amada Carlos A Point and shoot interface for linking database records to spreadsheets whereby data of a record is automatically reformatted and loaded upon issuance of a recalculation command
US6009454A (en) * 1994-09-30 1999-12-28 Allen-Bradley Company, Llc Multi-tasking operation system for industrial controller
US5644738A (en) * 1995-09-13 1997-07-01 Hewlett-Packard Company System and method using context identifiers for menu customization in a window
US6493006B1 (en) * 1996-05-10 2002-12-10 Apple Computer, Inc. Graphical user interface having contextual menus
US6009459A (en) 1997-01-10 1999-12-28 Microsoft Corporation Intelligent automatic searching for resources in a distributed environment
US5983268A (en) * 1997-01-14 1999-11-09 Netmind Technologies, Inc. Spreadsheet user-interface for an internet-document change-detection tool
US6523022B1 (en) * 1997-06-09 2003-02-18 Allen Hobbs Method and apparatus for selectively augmenting retrieved information from a network resource
US6507351B1 (en) * 1998-12-09 2003-01-14 Donald Brinton Bixler System for managing personal and group networked information
US6631497B1 (en) * 1999-07-19 2003-10-07 International Business Machines Corporation Binding data from data source to cells in a spreadsheet
US7162700B1 (en) * 2000-04-28 2007-01-09 Intel Corporation Enabling hypertext elements to work with software applications
WO2001090908A1 (en) * 2000-05-22 2001-11-29 Sap Portals Inc. Snippet selection
US7117435B1 (en) * 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text

Also Published As

Publication number Publication date
GB2368941B (en) 2005-02-16
US20050177573A1 (en) 2005-08-11
US7539944B2 (en) 2009-05-26
DE10135445A1 (de) 2002-03-07
US20060053383A1 (en) 2006-03-09
US7512897B2 (en) 2009-03-31
JP2002189595A (ja) 2002-07-05
GB2368941A (en) 2002-05-15
DE10135445B4 (de) 2020-02-27
GB0117751D0 (en) 2001-09-12
US20020036662A1 (en) 2002-03-28
US6948134B2 (en) 2005-09-20

Similar Documents

Publication Publication Date Title
JP4972254B2 (ja) リフレッシュ可能なWebクエリを作成するための統合された方法
EP1922604B1 (en) Command user interface for displaying selectable functionality controls in a database application
US8719773B2 (en) Workflow data binding
US10585977B2 (en) WYSIWYG, browser-based XML editor
EP1920350B1 (en) Markup based extensibility for user interfaces
RU2383918C2 (ru) Представление элементов пользовательского интерфейса в упрощенном виде
US6973625B1 (en) Method for creating browser-based user interface applications using a framework
US6262729B1 (en) Method and apparatus for binding user interface objects to application objects
US8694904B2 (en) Cross-browser rich text editing via a hybrid client-side model
US11366676B2 (en) Embedded user assistance for software applications
US5623591A (en) System and methods for building spreadsheet applications
US9588653B2 (en) GUI document management system
US20100251143A1 (en) Method, system and computer program for creating and editing a website
US20020156808A1 (en) Method and system for providing task information in a place
US20100235806A1 (en) Rich Web Site Authoring And Design
JP2004501450A (ja) Dhtmlおよびxsltを使用した任意のxmlドキュメントの作成
JP2008512794A (ja) オブジェクト処理グラフアプリケーション開発システム
US9817811B2 (en) Web server system, dictionary system, dictionary call method, screen control display method, and demonstration application generation method
Liberty et al. Programming ASP. NET: Building Web Applications and Services with ASP. NET 2.0
Topley Core Swing: advanced programming
Garcia et al. Hands-On Visual Studio 2022: A developer's guide to exploring new features and best practices in VS2022 for maximum productivity
Boyhan Agricultural statistical data analysis using Stata

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080723

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080723

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120315

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120409

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150413

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4972254

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250