数式セルデータを自動的に完成させるためのコンピュータ実装方法であって、数式セルデータのユーザ入力に応答してオートコンプリートプロセスを実証するステップと、前記ユーザ入力に基づいてオートコンプリートオプションを集約するステップと、前記ユーザ入力がトリガであるときに、オートコンプリートオプションの動的リストを表示するステップとを含むことを特徴とするコンピュータ実装方法。前記オートコンプリートプロセスを実証する前に、前記オートコンプリートプロセスを動作させるステップをさらに含むことを特徴とする請求項1に記載のコンピュータ実装方法。前記オートコンプリートプロセスを動作させるステップは、キャラクタを数式セルに入力することにより、前記オートコンプリートプロセスを動作させるステップをさらに含むことを特徴とする請求項2に記載のコンピュータ実装方法。前記数式セルデータは、スプレッドシートデータを含むことを特徴とする請求項1に記載のコンピュータ実装方法。オートコンプリートオプションを集約するステップは、コンポーネントを集約するステップをさらに含むことを特徴とする請求項1に記載のコンピュータ実装方法。コンポーネントは、スプレッドシート関数依存性、定義名依存性、リスト、ピボット依存性、ユーザ定義関数依存性、列挙引数依存性、シートデータオブジェクト依存性、および日付オブジェクト依存性のうちの少なくとも1つを含むことを特徴とする請求項5に記載のコンピュータ実装方法。前記動的リストから選択されるオートコンプリートオプションに関連するティップスを表示するステップをさらに含むことを特徴とする請求項1に記載のコンピュータ実装方法。トリガは、セル参照、数字、スペース、算術演算子およびキャラクタ演算子のうちのどの1つも含まないことを特徴とする請求項1に記載のコンピュータ実装方法。前記ユーザ入力がトリガでないときに、オートコンプリートオプションの前記動的リストを隠すステップをさらに含むことを特徴とする請求項1に記載のコンピュータ実装方法。第2のユーザ入力がトリガであるときに、オートコンプリートオプションの前記動的リストを表示するステップをさらに含むことを特徴とする請求項9に記載のコンピュータ実装方法。オートコンプリートオプションの動的リストを表示するステップは、前記トリガがコンポーネントに関与しないときに、オートコンプリートオプションのフィルタがかけられていない動的リストを表示するステップをさらに含むことを特徴とする請求項1に記載のコンピュータ実装方法。第2のユーザ入力がコンポーネントに関与するときに、オートコンプリートオプションの前記フィルタがかけられていない動的リストにフィルタをかけるステップをさらに含むことを特徴とする請求項11に記載のコンピュータ実装方法。オートコンプリートオプションの動的リストを表示するステップは、前記トリガがコンポーネントに関与するときに、オートコンプリートオプションのフィルタがかけられた動的リストを表示するステップをさらに含むことを特徴とする請求項1に記載のコンピュータ実装方法。第2のユーザ入力がコンポーネントに関与するときに、2度目についてのオートコンプリートオプションの前記フィルタがかけられたリストにフィルタをかけるステップをさらに含むことを特徴とする請求項13に記載のコンピュータ実装方法。その上にデータ構造を記憶しているコンピュータ読取り可能媒体であって、ユーザ入力について適合された第1のデータフィールドと、前記第1のデータフィールドを自動的に完成させるためのオートコンプリートオプションの集合体を含む第2のデータフィールドと、ユーザ入力がコンポーネントに関与するときに、前記ユーザ入力が、前記第2のデータフィールドのコンポーネントおよびフィルタがかけられたリストに関与しない場合に、前記第2のデータフィールドのフィルタがかけられていないリストを含む第3のデータフィールドとを含むことを特徴とするコンピュータ読取り可能媒体。前記第1のデータフィールドは、スプレッドシートセルであることを特徴とする請求項15に記載のコンピュータ読取り可能媒体。前記第2のデータフィールドは、スプレッドシート関数、定義名、リスト、ピボット、ユーザ定義関数、列挙引数、シートデータオブジェクトおよび日付オブジェクトのうちの少なくとも1つを含むことを特徴とする請求項15に記載のコンピュータ読取り可能媒体。選択されたオートコンプリートオプションに関する情報を含む第4のデータフィールドをさらに含むことを特徴とする請求項15に記載のコンピュータ読取り可能媒体。前記情報は、前記選択されたオートコンプリートオプションに関するティップスを含むことを特徴とする請求項18に記載のコンピュータ読取り可能媒体。ディスプレイおよびユーザインターフェース選択デバイスを含むグラフィックユーザインターフェースを有するコンピュータシステムにおいて、前記ディスプレイ上に動的リストを提供し、前記ディスプレイ上の動的リストから選択する方法であって、数式セルへのユーザ入力に応答してオートコンプリートプロセスを実証するステップと、前記ユーザ入力に基づいてオートコンプリートオプションを集約するステップと、前記ユーザ入力が、前記オートコンプリートオプションに関連し、前記ユーザ入力がコンポーネントに関与するときに、オートコンプリートオプションのフィルタがかけられた動的リストを表示するステップと、前記ユーザ入力が、前記オートコンプリートオプションに関連しており、前記ユーザ入力がコンポーネントに関与していないときに、オートコンプリートオプションのフィルタがかけられていない動的リストを表示するステップと、前記ユーザ入力が、前記オートコンプリートオプションに関連していないときに、リストが表示されないようにするために前記オートコンプリートプロセスを隠すステップとを含むことを特徴とする方法。現在のスプレッドシートプログラムにおいては、数式を構築するためのヘルプを獲得することと、この数式それ自体を構築することの間に大きなギャップがあるので、セルの数式を構築することは簡単なタスクではない。一般的に、ユーザは、数式名を思い出し、数式をどのようにしてスペルでつづるかを思い出し、引数argument中で使用する適切な値を思い出すことが必要になる。かかる要件は、数式を構築するプロセスを減速させ、しばしばユーザが、ユーザのタスクを正常に完了することができないようにしてしまう。ユーザには、スプレッドシート中で数式を構築するために数式および参照を記憶している必要があることもある。かかる記憶には、数式名を記憶すること、引数を記憶すること、またはこの数式中に含むべきオブジェクトを記憶することを含むこともある。ユーザがこれらのエレメントを記憶していない場合には、このユーザは、このセルを離れ、この数式を構築する際にヘルプを求めてどこかへ行く必要がある。簡潔に言えば、ユーザは、構築しようとしている数式のすべての態様を記憶にとどめ、理解する必要がある。数式表現は、しばしば複雑な数式シンタックス、複数の引数、および複数のパラメータを含んでいる。数式表現はまた、各ネスト関数が複数のパラメータを必要とする複数のネスト関数を1つの数式内に含んでもいる。かかる数式表現は、記憶をますます困難にし、またタイプエラーの機会を増大させる。関数ウィザードは、さらに数式表現を構築するプロセスを妨害してきた。関数ウィザードは、このユーザをこのスプレッドシートのコンテキストの外に離脱させてしまう。ユーザを数式表現から引き離すことにより、思考過程が中断されることもあり、数式構築の一般的な速度が減速されてしまう。本発明は、一般にスプレッドシート、カルキュレータアプリケーション、会計アプリケーション、ビジネスアプリケーション、バンキングアプリケーションなどの数式データを自動的に完成させるためのシステムおよび方法に関する。本発明の一態様は、スプレッドシート数式を自動的に完成させるためのコンピュータ実装方法である。このコンピュータ実装方法は、数式セルデータのユーザ入力に応答してオートコンプリートプロセスautocompleteprocessを実証するステップを含んでいる。このユーザ入力が、オートコンプリート機能のトリガである場合には、このユーザ入力に基づいてオートコンプリートオプションautocompleteoptionを集約し、オートコンプリートオプションの動的リストを表示するステップも含まれる。本発明の他の態様は、コンピュータ実行可能命令を有するコンピュータ読取り可能媒体である。これらのコンピュータ実行可能命令は、集約されたオートコンプリートオプションのストアstoreにアクセスし、ユーザ入力をこのストアと比較するステップを含んでいる。これらの命令はまた、このユーザ入力に関連するオートコンプリートオプションの動的リストを表示し、オートコンプリートオプションの動的リストにフィルタをかけて、さらなるユーザ入力にマッチングさせるステップも含むことができる。本発明のさらに他の態様は、その上にデータ構造を記憶しているコンピュータ読取り可能媒体を含んでいる。このデータ構造は、ユーザ入力に適合させられる第1のデータフィールドと、この第1のデータフィールドを自動的に完成させるためのオートコンプリートオプションの集合体を含む第2のデータフィールドとを含んでいる。ユーザ入力がどのようなマッチングするオートコンプリートオプションも含まない場合、このデータ構造は、この第2のデータフィールドのフィルタされていないリストを含む第3のデータフィールドも含んでいる。ユーザ入力がマッチングするオートコンプリートオプションを含む場合には、このデータ構造は、さらにこの第2のデータフィールドのフィルタされたリストを含んでいる。本発明のさらに他の態様は、ディスプレイを含むグラフィックユーザインターフェースおよびユーザインターフェース選択デバイスを有するコンピュータシステムを備え、このディスプレイ上に動的リストを提供し、この動的リストから選択する方法を含んでいる。この提供し選択する方法は、セルへのユーザ入力に応答してオートコンプリートプロセスを実証するステップ、およびこのユーザ入力に基づいてオートコンプリートオプションを集約するステップを含んでいる。ユーザ入力が、数式構築を意味し、このユーザ入力がオートコンプリートオプションに関連するときに、この提供し選択する方法はまた、オートコンプリートオプションのフィルタされた動的リストを表示するステップも含んでいる。さらに、このユーザ入力がこれらのオートコンプリートオプションに関連する場合、この提供し選択する方法は、オートコンプリートオプションのフィルタされない動的リストを表示するステップを含むこともあり、このユーザ入力がこれらのオートコンプリートオプションに関連していない場合には、リストが表示されないようにするためにこのオートコンプリートプロセスを隠すステップを含むこともある。次に本明細書の一部分を形成し、図を介して本発明を実行するための特定の例示の実施形態を示す添付図面を参照して、本発明の実施形態について以降でさらに十分に説明することにする。しかし、本発明は、多数の異なる形態で実施することもでき、本明細書中で記述している実施形態だけに限定されるものとは解釈すべきではない。そうではなくて、これらの実施形態は、この開示が徹底し完備したものになるように、また当業者に対して本発明の範囲を十分に知らせることになるように提供されている。とりわけ、本発明は、方法またはデバイスとして実施することができる。したがって、本発明は、全面的にハードウェアの実施形態、全面的にソフトウェアの実施形態、またはソフトウェア態様とハードウェア態様を組み合わせた実施形態の形態を取ることができる。したがって、以下の詳細な説明は、限定的な意味で解釈すべきものではない。数式セルを自動的に完成させるための方法およびシステムの例証の実施形態1.例示のユーザインターフェース図3は、本発明の例示の一実施形態中で使用することができる例示のスプレッドシートのユーザインターフェースを示している。スプレッドシート300は、データを計算し、追跡するために使用される任意のタイプのスプレッドシートとすることができる。スプレッドシート300は、1つまたは複数の数式セル302を含むことができる。数式セル302は、数式、方程式、数字、文字、シンボル、単語、数式セル依存性、またはスプレッドシートに導かれる他の任意のデータ形式を受け取るように構成することができる。数式セル302は、1つまたは複数のコンポーネントを許可するように構成されるセルとして定義することができる。コンポーネントは、任意のタイプの数式データとして定義することができる。かかるコンポーネントは、数式依存性、スプレッドシート関数依存性、定義名依存性、リスト依存性、ピボット依存性、ユーザ定義関数依存性、列挙引数依存性、シートデータ依存性、日付オブジェクト依存性、または他の依存性を含むことができる。一実施形態においては、これらのコンポーネントは、1つまたは複数のアレイ中に記憶され、以下でさらに十分に記述することにする。スプレッドシート300は、ユーザが数式セル302中のデータに簡単にアクセスできるようにするための数式セル閲覧ウィンドウ304を含むこともできる。本発明は、たとえスプレッドシート300に関連して教示されるとしても、本発明では、数式セル302を有する任意のアプリケーションまたはプログラムを用いて実装することができることも企図されている。スプレッドシート300は、本明細書中において単に例示の目的および説明の目的で教示されているにすぎず、限定的と考えるべきではない。例えば、本発明は、カルキュレータが1つの数式セルを有する場合のカルキュレータアプリケーションに関連して使用することもできる。数式セルを有する会計アプリケーション、ビジネスアプリケーション、およびバンキングアプリケーションも企図している。図4は、数式セルを自動的に完成させる例示の一態様を示している。参照番号400は、数式セル402、ドロップダウンウィンドウdropdownwindow404、およびティップスウィンドウtipswindow406を含むことができる例示のユーザインターフェースである。数式セル402、ドロップダウンウィンドウ404、およびティップスウィンドウ406は、デフォルトの形状およびサイズに設定することもでき、またこの形状およびサイズは、ユーザによって調整可能とすることもできる。また、このティップスウィンドウ406およびドロップダウンウィンドウ404は、数式セル402に対して任意の様式で位置づけることもできる。一実施形態においては、ティップスウィンドウ406およびドロップダウンウィンドウ404は、常に任意のユーザ入力の右側にとどまる。ドロップダウンウィンドウ404は、さらにスクロールバー408を含んで、それによりユーザが、これらのオートコンプリートメンバ例えば、410に簡単にアクセスすることができるようにすることができる。以下でさらに述べるようにオートコンプリートメンバは、入力トリガ412に相関している。入力トリガは、ドロップダウンウィンドウ404中のコンポーネントの表示を促す入力を含むことができる。ユーザが入力トリガ412を用いて前進するときに、これらのオートコンプリートメンバには、フィルタがかけられて、最も関連したメンバだけが表示される。本発明の一実施形態においては、これらのオートコンプリートメンバは、動的であり、数式セル402についてのすべての使用可能なオプションの集合体を含んでいる。ドロップダウンウィンドウ404はまた、オートコンプリートアイコンautocompleteicon414も含むことができる。以下でさらに述べているように、オートコンプリートアイコン414は、オートコンプリートメンバ410が特定のタイプのコンポーネントカテゴリに属することを示すことができる。例えば、オートコンプリートアイコン414は、オートコンプリートメンバ410が、スプレッドシート関数依存性、定義名依存性、リスト依存性、ピボット依存性、ユーザ定義関数依存性、列挙引数依存性、シートデータ依存性、データオブジェクト依存性などであることを示すことができる。コンポーネントのタイプは、トリガが、特定のタイプのコンポーネントに関与することしかできないので、重要なこともある。ドロップダウンウィンドウ404は、特定のオートコンプリートメンバ410を識別するための選択インジケータ416をさらに含むこともできる。本発明の一態様において、インターフェース400は、ティップスウィンドウ406を含んでいる。ティップスウィンドウ406は、選択されたオートコンプリートメンバ410に関連した情報を含んでいる。ティップスウィンドウ406は、ユーザが、オートコンプリートメンバ410の全部の機能を覚えるまたは理解することができない点で、インターフェース400の有用性を増大させる。また、ティップスウィンドウ406は、ユーザが別のヘルプファンクションを開始する必要なしに、情報に対するアクセスを可能にする。参照番号418は、オートコンプリートアクチュエータautocompleteactuatorである。アクチュエータ418は、数式セル402をオートコンプリートプロセスへと促す。このオートコンプリートプロセスおよびインターフェース400は、オートコンプリートアクチュエータ418によって動作させられるまで、休止状態にとどまる。このようにして、ユーザがコンポーネントを入力していないときには、インターフェース400は、ユーザに対して侵襲的invasiveにはならない。一実施形態においては、オートコンプリートアクチュエータ418は、単にオートコンプリートプロセスを促すにすぎず、それに対して、入力412は、この入力412がトリガであるときに、ドロップダウンウィンドウ404の表示を促す。例えば、1つの数字、文字、またはセル依存性は、ユーザ入力トリガでなくてもよい。したがってこのドロップダウンウィンドウは表示されない。このプロセスは、それが必要でないときには、このインターフェース400のどのような侵襲性も低減させる。本発明の一態様においては、このオートコンプリートプロセスは、ユーザが手動で動作させることができる。本発明の他の態様においては、アクチュエータ418は、=シンボルである。しかし、本発明の趣旨および範囲を逸脱することなく任意の数字、文字、またはシンボルを使用することもできる。以下の表1は、ユーザが、このインターフェースと対話して、選択されたオートコンプリートメンバを挿入することができる複数の例示の方法を示している。列1は、例示のユーザアクションを示し、列2は、このインターフェースにおける例示の応答の内容である。表1は、キーボード相互作用およびマウス相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表2は、このドロップダウンウィンドウについての例示のナビゲーションツールを示している。列1は、例示のアクションを特定する。列2は、オートコンプリートメンバが選択されないときのこのインターフェースにおける例示の応答を特定し、列3は、オートコンプリートメンバが選択されるときのこのインターフェースにおける例示の応答を示している。表2は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表3は、このドロップダウンウィンドウが、このユーザ入力についてのマッチングを有さないときのいくつかの例示のシナリオを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容である。表3は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。ユーザが、コンポーネントを構築しながらオートコンプリートプロセスを起動するときについては、いくつかの規則を提供することができる。これらの規則の一部の実施例には、このカーソルの右側に位置するキャラクタは無視することができることが含まれる。オートコンプリートアレイメンバが挿入されるときに、これらのキャラクタは、プッシュバックpushbackされる上書きされない。このカーソルの左側に位置するテキストが入力トリガであり、この入力トリガがコンポーネント例えば、数式依存性、スプレッドシート関数依存性、定義名依存性、リスト依存性、ピボット依存性、ユーザ定義関数依存性、列挙引数依存性、シートデータ依存性、または日付オブジェクト依存性に関与する場合、このカーソルの左側に位置するキャラクタが、オートコンプリートプロセスのために解析される。かかる状況においては、これらのオートコンプリートメンバには、フィルタをかけることができ、その結果、まるでこの入力トリガがまさに入力されたかのようにこのプロセスは、オートコンプリートアレイメンバを戻すようになる。このカーソルの左側に位置するテキストが、スペース、算術演算子、-、/、など、またはキャラクタ演算子である例えば、コンポーネントが関与していない場合には、オートコンプリートメンバは、すべての可能性のあるオートコンプリートメンバを含んでいるすなわち、フィルタがかけられない。このユーザが、完全なオートコンプリートワードautocompletewordvlookup、myListなどの終わりにある場合には、これらのオートコンプリートメンバは、すべての可能性のあるメンバを含んでいるすなわち、コンポーネントが関与していないのでフィルタがかけられない。キャラクタがオートコンプリートワードから削除される場合には、これらのオートコンプリートアレイメンバは、この単語の残りの部分に基づいたメンバを含んでいる。本明細書中のこの開示を考慮して、ユーザが、オートコンプリートプロセスを起動するときについては、説明したもの以外の規則を提供することもできる。以下の表4は、ユーザが、コンポーネントを構築しながらオートコンプリートプロセスを起動するときに従うこともあるこれらの規則を例示するいくつかの例示のシナリオを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表4は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。図5は、数式セルを自動的に完成させる他の例示の態様を示している。例示のユーザインターフェース500は、ユーザインターフェース500が列挙依存性ドロップダウンウィンドウ502を含んでいる点以外は、例示のユーザインターフェース400と同様である。列挙依存性ドロップダウンウィンドウ502は、このユーザが数式セル506中に列挙依存性を入力していることを入力トリガ504が示すときに呼び出される。このユーザインターフェースは、列挙依存性識別子508を含むこともできる。列挙依存性識別子508は、この列挙依存性ドロップダウンウィンドウ502の最上部に表示することができ、この列挙依存性のカテゴリを識別することができる例えば、510。図6は、数式セルを自動的に完成させるさらに他の例示の態様を示している。例示のユーザインターフェース600は、ユーザインターフェース600がリスト依存性ドロップダウンウィンドウ602を含んでいる点以外は、ユーザインターフェース400と同様である。リスト依存性ドロップダウンウィンドウ602は、ユーザが数式セル606にリスト依存性を入力していることを入力トリガ604が示すときに呼び出される。ユーザが、リスト依存性を入力しているときに、ユーザインターフェース600は、リスト特有とすることができる、このリストについての列名608を含むことになる。ユーザインターフェース600はまた、このリストに属し得る特別のアイテム610を含むこともできる。かかる特別のアイテムは、All、Data、Header、Totalsなどを含むことができる。図7は、数式セルを自動的に完成させるさらに他の例示の態様を示している。例示のユーザインターフェース700は、ユーザインターフェース700が、ピボット依存性ドロップダウンウィンドウ702を含んでいる点以外は、ユーザインターフェース400と同様である。ピボット依存性ドロップダウンウィンドウ702は、このユーザが、数式セル706中にピボット依存性を入力していることを入力トリガ704が示すときに呼び出される。ユーザがピボット依存性を入力しているときに、ユーザインターフェース700は、このピボット階層中の現在のロケーションに基づくこともあるこのピボットについてのメンバ名708を含むことになる。ユーザインターフェース700は、このピボットに属し得る特別のアイテム710を含むこともできる。かかる特別のアイテムは、All、Data、Header、またはTotalsを含むことができる。図8は、数式セルを自動的に完成させるさらに他の例示の態様を示している。例示のユーザインターフェース800は、ユーザインターフェース800が接続依存性ドロップダウンウィンドウ802を含んでいる点以外は、ユーザインターフェース400と同様である。接続依存性ドロップダウンウィンドウ802は、このユーザが数式セル806中に接続依存性を入力していることを入力トリガ804が示すときに呼び出される。このユーザインターフェースはまた、接続識別子808を含むこともできる。接続依存性識別子808は、接続依存性ドロップダウンウィンドウ802の最上部に表示することができ、この接続依存性のカテゴリを識別することができる。図9は、数式セルを自動的に完成させるさらに他の例示の態様を示している。例示のユーザインターフェース900は、ユーザインターフェース900が日付依存性ドロップダウンウィンドウ902を含んでいる点以外は、ユーザインターフェース400と同様である。日付依存性ドロップダウンウィンドウ902は、このユーザが数式セル906中に日付依存性を入力していることを入力トリガ904が示すときに呼び出される。このユーザインターフェースは、カレンダオブジェクト908も含むことができる。カレンダオブジェクト908は、日付依存性ドロップダウンウィンドウ902の最下部に表示することができ、日付を挿入するためのフレンドリなインターフェースをユーザに提供することができる。2.例示のデータストア図10は、数式セルデータをオートコンプリートするための例示の実施形態を示している。システム1000は、コンピュータデバイス1002を含み、このコンピュータデバイスは、図1に関連して前述したコンピューティングデバイス100、または図2に関連して前述したモバイルデバイス200と同様とすることができる。コンピューティングデバイス1002は、オートコンプリートアプリケーションを有することができ、このオートコンプリートアプリケーションは、前述のようなオートコンプリートメンバを表示するためのオートコンプリートドロップダウンウィンドウ1004を含むことができる。参照番号1006は、データストアの一実施形態を示している。データストア1006は、複数のデータストアコンポーネントストアから構成することもできる。データストア1006は、スプレッドシート関数1008、定義名1010、リスト1012、ピボット1014、ユーザ定義関数1016、列挙引数1018、シートデータ1020、および日付オブジェクト1022についてのストアを含むことができる。データストア1006は、フィルタ1026を含むこともあるオートコンプリートメンバストア1024を含むこともできる。たとえデータストア1006が、図10において複数のデータストア1008~1024として表されているとしても、データストア1006は、単一のデータストアであってもよい。データストア1006は、数式セル1002をオートコンプリートするために使用することができるすべてのコンポーネントのプールpoolを含むこともできることがさらに企図されている。また、データストア1006は、この数式セルをオートコンプリートするために使用することができるすべての可能性のあるコンポーネントの一部分しか含まないフィルタがかけられたストアであることができることも企図されている。一実施形態においては、入力トリガが、この数式セル中に入力される。次いでメモリ1006がアクセスされ、ストア1008~1022が、この入力トリガと比較されて、このトリガに関連したコンポーネントが決定される。他の実施形態においては、このトリガが特定のストアに関与する場合に、1つまたは複数の特定のストア1008~1022がトリガに応答してアクセスされる。次いで、この関連したオートコンプリートメンバは、オートコンプリートメンバストア1024中にアレイとして記憶することができる。オートコンプリートドロップダウンウィンドウ1004は、ストア1024の最も関連したオートコンプリートメンバを表示することができる。ユーザが入力を入力することで前進するときに、このオートコンプリートアレイメンバには絶えずフィルタがかけられ、その結果、オートコンプリートドロップダウンウィンドウ1004は、いつか特定の時刻における最も関連したオートコンプリートアレイメンバを表示することになる。図4に関連した一実施例として、ユーザは、文字Sとすることができる入力トリガ412を入力することができる。かかる状況においては、このオートコンプリートプロセスは、この文字Sが特定の任意のタイプのコンポーネントに関連していることを識別することができない。次いでストレージ1006がアクセスされることになり、ストレージユニット1008~1022が、入力トリガ412と比較されることになる。文字Sで開始されるすべての関連したコンポーネントが、オートコンプリートアレイメンバストア1024に記憶されることになり、オートコンプリートドロップダウンウィンドウ404は、最も関連したコンポーネントを表示することになる。例えば、次いでユーザが文字Sの後に文字aを入力する場合、これらのコンポーネントにはさらにフィルタがかけられて、文字の組合せSaをもたないコンポーネントが削除される。このようにして、オートコンプリートドロップダウンウィンドウ404は常に、最も関連したオートコンプリートアレイメンバ410を表示する。他の実施例においては、ユーザはオープンな括弧openbracketとすることができる入力トリガを入力することもできる。オープン括弧トリガは、リスト依存性にしか関与することができない。したがって、このオートコンプリートドロップダウンウィンドウは、リスト依存性を表示することしかできない。他の実施例としては、この入力トリガは、シンボルでもよい。シンボルは、特定のタイプのコンポーネントに関与することができず、したがってすべてのコンポーネントが、このドロップダウンウィンドウ中に表示されるはずである。3.例示の入力トリガ前述のように、このオートコンプリートプロセスは、様々なタイプのコンポーネントをプールして、特定の入力トリガについて最も関連したコンポーネントを決定することができる。この入力トリガは、ある種の1組のコンポーネントに関与することもできる。かかる状況においては、このオートコンプリートプロセスは、ある種のコンポーネントストアにアクセスする必要しかないこともある。以下の表5は、スプレッドシート関数依存性およびユーザ定義関数依存性についてのいくつかの例示のコンテキスト依存の入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表5は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表6は、定義名についてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表6は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表7は、リスト名についてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表7は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表8は、リストフィールドについてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表8は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表9は、ピボットテーブル名についてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表9は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表10は、ピボットテーブルフィールドについてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表10は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表11は、シートデータについてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表11は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。以下の表12は、シートデータスライサsheetdataslicerについてのいくつかの例示のコンテキスト依存入力トリガを示している。列1は、例示のユーザ入力シナリオを特定し、列2は、このインターフェース中の例示の応答内容を示している。表12は、キーボード相互作用の一般的な実施例を表し、本発明を限定することを意図してはいない。4.例示のティップスウィンドウ図4を参照すると、前述のように、参照番号406は、ティップスウィンドウである。一実施形態において、ティップスウィンドウは、内容テキスト行、およびこの選択されたオートコンプリートメンバの記述を含んでいる。このティップスウィンドウは、ユーザがコンポーネントを識別するのを助ける任意の情報を含むことができる。図4に示すように、ティップスウィンドウ406は、オートコンプリートメンバが、オートコンプリートメンバのアレイ中でハイライトされるときに出現することができる。以下の表13は、スプレッドシート関数依存性についてのティップスウィンドウの一実施例を示している。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表13は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表14は、ユーザ定義関数依存性についてのティップスウィンドウの一実施例を示している。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表14は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表15は、列挙引数依存性についてのティップスウィンドウの一実施例を示している。列挙引数は、すべてのブール引数真/偽、オン/オフ、イエス/ノーなどを含むことができる。列挙引数はまた、数値が選択肢1-平均、2-カウントなどにマッピングする場合の従来の列挙引数を含むこともできる。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表15は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表16は、定義名依存性についてのティップスウィンドウの一実施例を示している。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表16は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表17は、リスト依存性についてのティップスウィンドウの一実施例を示している。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表17は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表18は、リスト依存性についてのティップスウィンドウの他の実施例を示している。ユーザが、リストの指定部内で作業を行っており、また図6に示すようにこの依存性が特別なアイテム610であるときに、表18に例示されるこのティップスウィンドウは、利用することができる。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表18は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表19は、リスト依存性についてのティップスウィンドウの他の実施例を示している。ユーザが、リストの指定部内で作業を行っており、また図6に示すようにこの依存性が列名608であるときに、表19に例示されるこのティップスウィンドウは、利用することができる。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表19は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表20は、ピボット依存性についてのティップスウィンドウの一実施例を示している。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表20は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表21は、ピボット依存性についてのティップスウィンドウの他の実施例を示している。ユーザが、ピボットの指定部内で作業を行っており、また図7に示すようにこの依存性が特別なアイテム710であるときに、表21に例示されるこのティップスウィンドウを利用することができる。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表21は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表22は、ピボット依存性についてのティップスウィンドウのさらに他の実施例を示している。ユーザが、ピボットの指定部内で作業を行っており、また図7に示すようにこの依存性が特別なアイテム710であるときに、表22に例示されるこのティップスウィンドウは、利用することができる他のティップスウィンドウである。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表22は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表23は、ピボット依存性についてのティップスウィンドウのさらに他の実施例を示している。ユーザが、ピボットフィールド内で作業を行っているときに、表23に例示されるこのティップスウィンドウを利用することができる。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表23は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表24は、シートデータ依存性についてのティップスウィンドウの一実施例を示している。表24は、シートデータ接続依存性について言及している。接続は、キューブcubeへの接続についての名前またはストリングである。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表24は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。以下の表25は、シートデータ依存性についてのティップスウィンドウの他の実施例を示している。表25は、シートデータ名前空間依存性について言及している。名前空間は、キューブcube内のメンバのメンバ名を含むストリングである。列1は、このティップスウィンドウの例示の内容を特定し、列2は、一実施例である。表25は、ティップスウィンドウの一般的な一実施例を表し、本発明を限定することを意図してはいない。5.例示のプロセス図11は、数式セルを自動的に完成させるためのプロセスの論理的な流れ図を示している。プロセス1100は、開始ブロック1102から開始され、ブロック1104へと流れており、このステップでユーザは、オートコンプリートプロセスを促す。本発明の一実施形態においては、このユーザは、数式セル中に=シンボルを入力することにより、オートコンプリートプロセス1100を促す。他の実施形態においては、このユーザは、ツールバーのドロップダウンウィンドウからのプロセスを動作させることにより、このオートコンプリートプロセスを促す。本発明の趣旨および範囲を逸脱することなく、任意の数字、文字、シンボル、またはユーザ入力を使用して、オートコンプリートプロセス1100を促すことができることをさらに企図している。プロセス1100は、ブロック1106へと進み、ここでキャラクタが入力されているかどうかが判定される。キャラクタがすでに入力されている場合、プロセス1100は、以下で述べるように、ブロック1110へと進む。キャラクタが入力されていない場合には、プロセス1100は、このキャラクタが入力されていると判定されるまで、休止状態にとどまる。この場合にも、キャラクタは、任意の数字、文字、句読点、シンボルまたはユーザ入力を含むことができる。キャラクタが入力されている場合、プロセス1100は、ブロック1108へと進み、ここでこのキャラクタがトリガであるかどうかが判定される。キャラクタがトリガでない場合、このプロセスはブロック1110へと進み、ここで、このオートコンプリートドロップダウンウィンドウのステータスは、変化しない。別の言い方をすれば、このドロップダウンウィンドウが休止状態にある場合、このドロップダウンウィンドウは、休止状態のままにとどまる。他の状況において、このドロップダウンウィンドウが1組のコンポーネントを表示している場合には、このドロップダウンウィンドウは、この同じ1組のコンポーネントを表示したままにとどまる。上記の表3は、入力キャラクタがこのウィンドウの表示を起動しないことになるときは、少数の例示のシナリオをリストアップする。これらのシナリオは、例示の目的にすぎない。このウィンドウを表示することが望ましくないどのような状況においてもこのウィンドウが休止状態にとどまることができることがさらに企図されている。プロセス1100は、ブロック1114へと進み、ここで別のキャラクタが入力されているかどうかが判定される。別のキャラクタが入力されている状況においては、プロセス1100は、ブロック1108へとループバックし、ここでこのキャラクタがトリガであるかどうかが判定される。別のキャラクタが入力されていないと判定される場合、プロセス1100は、ブロック1116へと進み、ここでこのセル入力が完了しているかどうかが判定される。このセル入力が完了している場合、このプロセスは、終了ブロック1132において終了する。このセル入力が完了していない場合には、このプロセスは、ブロック1114へとループバックする。ブロック1108においてこの入力がトリガであると判定される場合、このプロセス1100は、ブロック1118へと進み、ここで特定のコンポーネントが関与しているかどうかが判定される。トリガが特定のコンポーネントに関与していないときには、上記の表4は、少数の例示のシナリオをリストアップする。他の例示のシナリオは、スペース、算術演算子、キャラクタ演算子、または完全なオートコンプリートメンバを入力することを含んでいる。かかる状況においては、このオートコンプリートアレイメンバには、フィルタがかけられず、このオートコンプリートドロップダウンウィンドウは、ブロック1120によって示されるようなオートコンプリートメンバの全体リストを含むことになる。ブロック1118において、このトリガがコンポーネントに関与している場合、このプロセス1100は、ブロック1122へと流れることになる。ブロック1122は、この関与するコンポーネントに関連したメンバしか含まないようにオートコンプリートアレイメンバにフィルタをかけるステップを示している。例えば、ユーザは、オープンな丸括弧を入力することができる。オープンな丸括弧だけを数式セル中で使用して、スプレッドシートの数式またはユーザ定義の数式を構築する状況においては、このフィルタは、スプレッドシート数式依存性およびユーザ定義依存性以外のすべてのコンポーネントをフィルタにかけて除去することになる。他の実施例として、ユーザは、オープンな括弧シンボルを入力することもできる。このオープンな括弧は、リスト、ピボット、またはシートデータオブジェクトにしか関与することができない。かかる状況においては、プロセス1100は、リスト、ピボット、またはシートデータオブジェクトでないすべてのコンポーネントをフィルタにかけて除去することになる。プロセス1100は、ブロック1124へと進み、ここでこれらのフィルタがかけられたメンバは、ユーザ選択のためのドロップダウンウィンドウ中に含められる。ブロック1126は、このドロップダウンウィンドウからオートコンプリートメンバを選択するか否かの判定を示している。選択が行われない場合、プロセス1100は、ブロック1114へとループバックする。選択が行われる場合には、ブロック1128が示すようにこの選択はこの数式セルに入力され、プロセス1100は、ブロック1130へと進み、ここでセル入力が完了しているかどうかが判定される。セル入力が完了している場合、プロセス1100は終了ブロック1132において終了する。セル入力が完了していない場合には、プロセス1100は、ブロック1114へとループバックする。例示の動作環境図1を参照すると、本発明を実装するための例示のシステムは、コンピューティングデバイス100などのコンピューティングデバイスを含んでいる。基本的なコンフィギュレーションにおいては、コンピューティングデバイス100は、一般的に少なくとも1つの処理装置102、およびシステムメモリ104を含んでいる。コンピューティングデバイスの厳密なコンフィギュレーションおよびタイプに応じて、システムメモリ104は、RAMのように揮発性であり、ROM、フラッシュメモリなどのように不揮発性であり、またはこれら2つのある組合せとすることができる。システムメモリ104は、一般的にオペレーティングシステム105、1つまたは複数のアプリケーション106を含んでおり、プログラムデータ107を含むこともできる。この基本的なコンフィギュレーションは、破線108内のこれらのコンポーネントにより、図1に示されている。コンピューティングデバイス100は、追加の特徴または機能を有することもできる。例えば、コンピューティングデバイス100は、例えば、磁気ディスク、光ディスクまたはテープなど、着脱可能および/または着脱不能の追加のデータストレージデバイスを含むこともできる。かかる追加ストレージは、図1において着脱可能ストレージ109および着脱不能ストレージ110によって示される。コンピュータストレージ媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュールまたは他のデータなど、情報を記憶するための任意の方法および技術の形で実装される揮発性および不揮発性の、着脱可能および着脱不能な媒体を含むことができる。システムメモリ104、着脱可能ストレージ109、および着脱不能ストレージ110は、すべてコンピュータストレージ媒体の実施例である。コンピュータストレージ媒体には、それだけには限定されないが、所望の情報を記憶するために使用することができ、コンピューティングデバイス100によってアクセスすることができる、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD-ROM、DVDdigitalversatilediskデジタル多用途ディスクまたは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは他の任意の媒体が含まれる。かかる任意のコンピュータストレージ媒体は、デバイス100の一部分とすることもできる。コンピューティングデバイス100はまた、キーボード、マウス、ペン、音声入力デバイス、接触入力デバイスなど、1つまたは複数の入力デバイス112を有することもできる。ディスプレイ、スピーカ、プリンタなど、1つまたは複数の出力デバイス114も含めることができる。これらのすべてのデバイスは、当技術分野において知られており、ここで長々と説明する必要はない。コンピューティングデバイス100はまた、このデバイスが、ネットワークや無線の網目状ネットワーク上などで、他のコンピューティングデバイス118と通信を行うことができるようにする1つまたは複数の通信接続116も含んでいる。1つまたは複数の通信接続116は、通信媒体の一実施例である。通信媒体は、一般的に搬送波や他の搬送メカニズムなど、被変調データ信号の形でコンピュータ読取り可能命令、データ構造、プログラムモジュールまたは他のデータを実施し、任意の情報配信媒体を含んでいる。この用語被変調データ信号は、この信号中の情報を符号化するようにしてその1つまたは複数の特性が設定され、または変更されている信号を意味している。実施例として限定するものではないが、通信媒体は、有線ネットワークや直接配線接続などの有線媒体、および音響、RF、赤外線、他の無線媒体などの無線媒体を含んでいる。本明細書中で使用される用語、コンピュータ読取り可能媒体は、ストレージ媒体も通信媒体も共に含んでいる。一実施形態において、アプリケーション106は、本発明に従って数式セルを自動的に完成させるためのアプリケーション120をさらに含んでいる。図2は、本発明の例示の一実施形態において使用することができるモバイルコンピューティングデバイスを示している。図2を参照すると、本発明を実装するための例示のシステムは、モバイルコンピューティングデバイス200などのモバイルコンピューティングデバイスを含んでいる。モバイルコンピューティングデバイス200は、プロセッサ260、メモリ262、ディスプレイ228、およびキーパッド232を有している。メモリ262は、一般に揮発性メモリ例えば、RAMも不揮発性メモリ例えば、ROM、フラッシュメモリなども共に含んでいる。モバイルコンピューティングデバイス200は、マイクロソフトからのWindows登録商標CEオペレーティングシステムや他のオペレーティングシステムなどのオペレーティングシステム264を含んでおり、このオペレーティングシステムは、メモリ262中に存在しており、プロセッサ260上で実行される。キーパッド232は、典型的な電話上などのプッシュボタン数字ダイアリングパッド、従来のキーボードなどのマルチキーキーボードでもよい。ディスプレイ228は、液晶ディスプレイ、またはモバイルコンピューティングデバイス中で一般に使用される他の任意のタイプのディスプレイでもよい。ディスプレイ228は、接触感受性のあるものでもよく、この場合には入力デバイスとしての機能も果たすはずである。1つまたは複数のアプリケーションプログラム266は、メモリ262にロードされ、オペレーティングシステム264上で実行される。アプリケーションプログラムの実施例には、電話ダイヤラプログラム、電子メールプログラム、スケジューリングプログラム、PIMpersonalinformationmanagement個人情報管理プログラム、ワードプロセッシングプログラム、スプレッドシートプログラム、インターネットブラウザプログラムなどが含まれる。モバイルコンピューティングデバイス200は、メモリ262内に不揮発性ストレージ268も含んでいる。不揮発性ストレージ268を使用して、モバイルコンピューティングデバイス200の電源が切られる場合にも失われないはずの持久性の情報を記憶することができる。アプリケーション266は、電子メールアプリケーションが使用する電子メールまたは他のメッセージ、PIMが使用する連絡情報、スケジューリングプログラムが使用するアポイントメント情報、ワードプロセッシングアプリケーションが使用するドキュメントなど、ストレージ268中の情報を使用しそれに記憶することができる。モバイルコンピューティングデバイス200は、電源270を有しており、この電源は、1つまたは複数のバッテリとして実装することができる。電源270は、ACアダプタや、これらのバッテリを補完し、または再充電する電源を備えたドッキングクレードルdockingcradleなど外部電源もさらに含むこともできる。モバイルコンピューティングデバイス200は、2タイプの外部通知メカニズム、すなわちLED240およびオーディオインターフェース274を有するように示されている。これらのデバイスは、電源270に直接に結合することができ、その結果、たとえプロセッサ260および他のコンポーネントが、バッテリ電力を節約するために活動を停止することがあっても、これらは、アクティブ化されるときに、この通知メカニズムが指示する期間中はオンのままにとどまることになる。LED240は、このユーザが、このデバイスの電源をオンにしたステータスを示すアクションを取るまで、いつまでもオンのままであるようにプログラムすることができる。オーディオインターフェース274を使用して、可聴信号を提供し、またこのユーザからの可聴信号が受け取られる。例えば、オーディオインターフェース274は、電話の会話を実行するなどのために、可聴出力を提供するためにスピーカに結合し、可聴入力を受け取るためにマイクロフォンに結合することができる。モバイルコンピューティングデバイス200はまた、無線周波数通信など、通信情報を送信し受信するファンクションを実施する無線インターフェースレイヤ272も含んでいる。無線インターフェースレイヤ272は、通信キャリアまたはサービスプロバイダを介して、モバイルコンピューティングデバイス200と外側の世界との間の無線接続を実行する。無線インターフェースレイヤ272への伝送および無線インターフェースレイヤ272からの伝送は、オペレーティングシステム264の制御下で行われる。換言すれば、無線インターフェースレイヤ272が受信する通信情報は、オペレーティングシステム264を介してアプリケーションプログラム266に流すことができ、また逆の場合も同様である。一実施形態においては、アプリケーション266は、本発明に従って数式セルを自動的に完成させるためのアプリケーション280をさらに含んでいる。以上の明細書、実施例およびデータは、本発明の構成の製造および使用についての完全な説明を提供している。本発明の趣旨および範囲を逸脱することなく、本発明の多数の実施形態を作成することができるので、本発明は、添付の特許請求の範囲中に存在している。