(57)【要約】  高速分析ツールは、スプレッドシート文書の選択部分においてデーターに合わせて個別に作成された１つ以上のデーター分析特化機能を提示するように構成される。高速分析ツールは、高速分析ツール移行ボタンを設けることができ、このボタンが選択されると、コンテキスト・ユーザー・インターフェースを表示させる。このコンテキスト・ユーザー・インターフェースは、ユーザーが１つ以上のデーター分析特化機能に容易にアクセスし易くする。また、高速分析ツールは、ユーザーがこれらのデーター分析特化機能の内１つ以上を予め見ること、および／または適用することができるメカニズムを設ける一方で、スプレッドシート・アプリケーションの新たなユーザーまたは初級ユーザーに対する、潜在的な習得の難しさや、慣例上高い参入障壁を回避する。また、スプレッドシート・アプリケーションの中級ユーザーまたはもっと進んだユーザーも、スプレッドシート文書内のデーターにデーター分析特化機能を適用する効率向上のために、この高速分析ツールから利益が得られる。【選択図】図１
2015507779.tif 000002
【特許請求の範囲】
【請求項１】
コンピューター実施動作を含むコンピューター実装方法であって、
スプレッドシート文書からある範囲のセルの選択を受ける動作と、
前記セルの範囲の選択に近接して、高速分析ツール移行ボタンを表示する動作と、
前記スプレッドシート文書の前記セルの範囲に含まれるデーターの１つ以上のデーター型を判定する動作と、
前記１つ以上のデーター型に適用するのに適した１つ以上のデーター分析特化機能を決定する動作と、
前記高速分析ツール移行ボタンの選択を受ける動作と、
前記高速分析ツール移行ボタンの選択を受けたことに応答して、前記１つ以上のデーター分析特化機能に対する1つ以上のユーザー選択可能な表現を表示する動作と、
前記１つ以上のユーザー選択可能な表現から、特定のユーザー選択可能な表現の選択を受ける動作であって、前記特定のユーザー選択可能な表現が、前記１つ以上のデーター分析特化機能の内特定のデーター分析特化機能と関連付けられる、動作と、
前記特定のユーザー選択可能な表現の選択を受けたことに応答して、前記特定のデーター分析特化機能を、前記セルの範囲に含まれる前記データーに適用する動作と、
を含む、コンピューター実装方法。
【請求項２】
請求項１記載のコンピューター実装方法であって、更に、
前記スプレッドシート文書からの前記セルの範囲の選択を受けたことに応答して、前記セルの範囲の選択が２つ以上の空白でないセルを含むか否か判定するコンピューター実施動作と、
前記セルの範囲の選択が２つ以上の空白でないセルを含むと判定した場合、前記セルの範囲の選択に近接して前記高速分析ツール移行ボタンを表示するコンピューター実施動作と、
前記セルの範囲の選択が２つ以上の空白でないセルを含まないと判定した場合、前記コンピューターに、前記コンピューター実行可能命令の残りを実行しないように命令するコンピューター実施動作と、
を含む、コンピューター実装方法。
【請求項３】
請求項１記載のコンピューター実装方法であって、更に、
前記１つ以上のデーター分析特化機能を通じて前記スプレッドシート文書の操作を可能にするように構成されたスプレッドシート・アプリケーションの起動後に、前記セルの範囲の選択が第１範囲選択であるか否か判定するコンピューター実施動作と、
前記スプレッドシート・アプリケーションの起動後前記セルの範囲の選択が第１範囲選択であると判定した場合、前記１つ以上のデーター分析特化機能に対する１つ以上のユーザー選択可能な表現に関係する情報を含むツールチップを表示するコンピューター実施動作と、
前記スプレッドシート・アプリケーションの起動後前記セルの範囲の選択が第１範囲選択でないと判定した場合、前記スプレッドシート文書における前記セルの範囲に含まれるデーターの前記１つ以上のデーター型を判定するコンピューター実施動作と、
を含む、コンピューター実装方法。
【請求項４】
請求項４記載のコンピューター実装方法において、前記１つ以上のデーター分析特化機能を通じて前記スプレッドシート文書の操作を可能にするように構成されたスプレッドシート・アプリケーションの起動後に、前記セルの範囲の選択が第１範囲選択であるか否か判定するコンピューター実施動作が、前記スプレッドシート・アプリケーションの起動が当該スプレッドシート・アプリケーションの所定回数の起動以内である場合にのみ、前記スプレッドシート・アプリケーションの起動後前記セルの範囲の選択が第１範囲選択であるか否か判定するコンピューター実施動作を含む、コンピューター実装方法。
【請求項５】
請求項１記載のコンピューター実装方法において、前記１つ以上のデーター分析特化機能に対して前記１つ以上のユーザー選択可能な表現を表示するコンピューター実施動作が、前記ユーザー選択可能な表現が位置付けられるギャラリーを含む高速分析ツールを明確化するために前記高速分析ツール移行ボタンを拡大するコンピューター実施動作を含む、コンピューター実装方法。
【請求項６】
コンピューターであって、
プロセッサーと、
前記プロセッサーと通信するコンピューター読み取り可能記憶媒体であって、当該媒体上に格納されたコンピューター実行可能命令を含み、前記命令が前記プロセッサーによって実行されると、前記プロセッサーに、
スプレッドシート文書内における２つ以上のセルの選択を受けさせ、
前記スプレッドシート文書内における前記２つ以上のセルの選択を受けたことに応答して、前記コンピューターに動作的に接続された表示画面上に高速分析ツール・ユーザー・インターフェースを表示させ、前記高速分析ツール・ユーザー・インターフェースが、前記２つ以上のセルに含まれるデーターに適用可能な１つ以上のデーター分析特化機能に対する１つ以上のユーザー選択可能な表現を含む、
コンピューター読み取り可能記憶媒体と、
を含む、コンピューター。
【請求項７】
請求項６記載のコンピューターにおいて、前記高速分析ツール・ユーザー・インターフェースが、更に、特化機能ギャラリーを含み、前記特化機能ギャラリーが、前記１つ以上のデーター分析特化機能に対する前記１つ以上のユーザー選択可能な表現を含む、コンピューター。
【請求項８】
コンピューター読み取り可能記憶媒体であって、当該媒体上に格納されたコンピューター実行可能命令を含み、前記命令がコンピューターによって実行されると、前記コンピューターに、
スプレッドシート文書内における２つ以上のセルの選択を受けさせ、
前記スプレッドシート文書内における前記２つ以上のセルの選択を受けたことに応答して、前記コンピューターに動作的に接続された表示画面上に高速分析ツール・ユーザー・インターフェースを表示させ、前記高速分析ツール・ユーザー・インターフェースが、前記２つ以上のセルに含まれるデーターに適用可能な１つ以上のデーター分析特化機能に対する１つ以上のユーザー選択可能な表現を含む、
コンピューター読み取り可能記憶媒体。
【請求項９】
請求項８記載のコンピューター読み取り可能記憶媒体であって、更に、当該媒体上に格納されたコンピューター実行可能命令を含み、前記コンピューターによって実行されると、前記コンピューターに、
前記１つ以上のユーザー選択可能な表現から特定のユーザー選択可能な表現の非選択フォーカスを受けさせ、前記特定のユーザー選択可能な表現が、前記１つ以上のデーター分析特化機能の内特定のデーター分析特化機能と関連付けられ、
前記特定のユーザー選択可能な表現の前記非選択フォーカスを受けたことに応答して、前記特定のデーター分析特化機能のプレビューを表示させる、
コンピューター読み取り可能記憶媒体。
【請求項１０】
請求項８記載のコンピューター読み取り可能記憶媒体であって、更に、当該媒体上に格納されたコンピューター実行可能命令を含み、前記コンピューターによって実行されると、前記コンピューターに、少なくとも部分的に、前記２つ以上のセルに含まれた前記データーに関連する１つ以上のデーター型に基づいて、前記２つ以上のセルに含まれた前記データーに適用可能な前記１つ以上のデーター分析特化機能を決定するために、１つ以上のアルゴリズムを実行させる、コンピューター読み取り可能記憶媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  ワシントン州、RedmondのMicrosoft社から入手可能なMICROSOFT EXCELのようなスプレッドシート・アプリケーション・プログラムには、とりわけ、グラフ作成(charting)、式、スパークライン(sparkline)、条件付き書式(conditional formatting)、ピボット・テーブル(pivot table)というような強力な分析特化機能(analytic feature)を設けるものがある。多くのユーザーは、これらの特化機能(feature)の一部または全部を知らない。他のユーザーは、これらの特化機能を知っていても、これらをどのように使うのか分からない。ときとして、これらのユーザーは、その場で試行錯誤によって、あるいは組み込まれたヘルプ機能および／またはオンライン・チュートリアルを用いて学習したがらないこともある。更に他のユーザーは、これらの特化機能を知っているが、これらの特化機能を使用することを望まない。何故なら、彼らはこれらの特化機能の見かけ上の複雑さに怖じ気づくからであるか、またはその特化機能が彼らのデーターを望ましくない状態に変更してしまう可能性があるために、この特化機能を試すのを心配するからである。
【０００２】
[0002]  今日では、特化機能を告知する(advertise)および／または特定の特化機能を使うようにユーザーに勧めようとするソリューションが存在する。例えば、一部のソーシャル・ネットワーキング・アプリケーションは、バックエンド・コンポーネントを利用して友人の提案を判断する(base)判断基準を決定したり、ユーザー・インターフェース・コンポーネントを利用して友人の提案をユーザーに示す。ディジタル・メディア配給アプリケーションが、音楽、映画、およびアプリケーション・プログラムというようなディジタル媒体に対して提案するための他のソリューションも存在する。ユーザーの購入履歴、オンライン・ストアの閲覧習慣、および／または他の判断基準に基づいて、製品の提案を行うために、同様の提案メカニズムがオンライン販売店によって実現されている。
【０００３】
[0003]  本明細書において行われる開示は、これらおよびその他の考慮事項に関して紹介される。
【発明の概要】
【０００４】
[0004]  本明細書では、スプレッドシート文書の選択部分においてデーターに合わせて個別に作成された１つ以上のデーター分析特化機能を提示するように構成された高速分析ツールの概念および技術について記載する。本明細書において開示する概念および技術の一部によれば、高速分析ツールは、高速分析ツール移行ボタン(quick analysis tool entry button)を設け、このボタンが選択されると、コンテキスト・ユーザー・インターフェースを表示させる。このコンテキスト・ユーザー・インターフェースは、ユーザーが１つ以上のデーター分析特化機能に容易にアクセスし易くする。高速分析ツールは、ユーザーが、実際に特化機能を適用する前に、彼らのスプレッドシート文書に何が起こるのか正確に予め見ることができるメカニズムを設け、馴染みのない特化機能を利用するときに、または彼らが思う通りに快適に構成することができると感じるよりも複雑であると感じる特化機能を利用するときにユーザーが抱くかもしれない恐れ、躊躇、または心配の多くを回避する。言い換えると、プレビューは、ユーザーに非破壊的なプレビュー(non-destructive preview)を提供するので、ユーザーは、彼らのスプレッドシート文書に実際には何の変化も起こすことなく、彼らのスプレッドシート文書に潜在的に起こり得る変化を見ることができる。また、高速分析ツールは、ユーザーがこれらのデーター分析特化機能の１つ以上を適用することができる特化機能も設ける一方で、スプレッドシート・アプリケーションの新たなユーザーまたは初級(less advanced)ユーザーに対する、潜在的な習得の困難さ(steep learning curve)や慣例上高い参入障壁(barrier of entry)を回避する。また、スプレッドシート・アプリケーションの中級ユーザーまたはもっと進んだユーザーも、スプレッドシート文書内のデーターにデーター分析特化機能を適用する効率向上のために、この高速分析ツールから利益が得られる。
【０００５】
[0005]  本明細書において開示する一態様によれば、例示的な方法は、スプレッドシート文書からある範囲のセルの選択を受けるステップと、このセル範囲の選択に近接して、高速分析ツール移行ボタンを表示するステップと、前記スプレッドシート文書のセルの範囲に含まれるデーターの１つ以上のデーター型を判定するステップと、１つ以上のデーター型に適用するのに適した１つ以上のデーター分析特化機能を決定するステップとを含む。更に、この例示的な方法は、高速分析ツール移行ボタンの選択を受けるステップと、高速分析ツール移行ボタンの選択を受けたことに応答して、１つ以上のデーター分析特化機能に対する1つ以上のユーザー選択可能な表現を表示するステップと、特定のユーザー選択可能な表現の選択を受けるステップと、特定のユーザー選択可能な表現の選択を受けたことに応答して、特定のデーター分析特化機能を、セルの範囲に含まれるデーターに適用するステップとを含む。
【０００６】
[0006]  本明細書において開示する更に他の態様によれば、例示的な方法は、スプレッドシート文書内における２つ以上のセルの選択を受けるステップと、スプレッドシート文書内における２つ以上のセルの選択を受けたことに応答して、高速分析ツール・ユーザー・インターフェースを表示するステップとを含む。高速分析ツール・ユーザー・インターフェースは、２つ以上のセルに含まれるデーターに適用可能な１つ以上のデーター分析特化機能に対して、１つ以上のユーザー選択可能な表現を含む。
【０００７】
[0007]  尚、以上で説明した主題は、コンピューター制御装置、コンピューター・プロセス、計算システム、またはコンピューター読み取り可能記憶媒体のような製造品目として実現されてもよいことは認められてしかるべきである。これらおよびその他の特徴は、以下の詳細な説明を読み、添付図面を検討することによって明白になるであろう。
【０００８】
[0008]  この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を限定するために用いられることを意図するのでもない。更に、特許請求する主題は、本開示のいずれかの部分に記されるいずれかの欠点を解決する実施態様にも、欠点の全てを解決する実施態様にも限定されるのではない。
【図面の簡単な説明】
【０００９】
【図１】図１は、本明細書において開示する種々の実施形態のための例示的動作環境を示すシステム図である。
【図２Ａ】図２Ａは、例示的な実施形態にしたがって、スプレッドシート文書内におけるあるセル範囲の選択に基づいて、スプレッドシート・アプリケーションのデーター分析特化機能を告知する(advertise)ために高速分析ツールを利用する方法の態様を示す流れ図である。
【図２Ｂ】図２Ｂは、例示的な実施形態にしたがって、スプレッドシート文書内におけるあるセル範囲の選択に基づいて、スプレッドシート・アプリケーションのデーター分析特化機能を告知するために高速分析ツールを利用する方法の態様を示す流れ図である。
【図３】図３は、例示的な実施形態にしたがって、選択されたセル範囲を検索してデーター型を求める方法の例示的な態様の流れ図である。
【図４】図４は、例示的な実施形態にしたがって、選択されたセル範囲内におけるセル値についてデーター型を判定する方法の一態様を示す流れ図である。
【図５Ａ】図５Ａは、種々の例示的な実施形態による高速分析ツールの態様を示すユーザー・インターフェース図である。
【図５Ｂ】図５Ｂは、種々の例示的な実施形態による高速分析ツールの態様を示すユーザー・インターフェース図である。
【図５Ｃ】図５Ｃは、種々の例示的な実施形態による高速分析ツールの態様を示すユーザー・インターフェース図である。
【図５Ｄ】図５Ｄは、種々の例示的な実施形態による高速分析ツールの態様を示すユーザー・インターフェース図である。
【図５Ｅ】図５Ｅは、種々の例示的な実施形態による高速分析ツールの態様を示すユーザー・インターフェース図である。
【図５Ｆ】図５Ｆは、種々の例示的な実施形態による高速分析ツールの態様を示すユーザー・インターフェース図である。
【図６】図６は、例示的な実施形態による、タッチ対応(touch-enabled)高速分析ツール・ユーザー・インターフェースを有する例示的なタブレット・デバイスを示す図である。
【図７】図７は、他の例示的な実施形態による、タッチ対応(touch-enabled)高速分析ツール・ユーザー・インターフェースを有する例示的なタブレット・デバイスを示す図である。
【図８】図８は、本明細書において提示する実施形態の態様を実現することができる計算システムについて、例示的なコンピューター・ハードウェアおよびソフトウェア・アーキテクチャーを示すコンピューター・アーキテクチャー図である。
【図９】図９は、本明細書において提示する実施形態の態様を実現することができる分散型計算環境を示す図である。
【図１０】図１０は、本明細書において提示する実施形態の態様を実現することができる計算デバイスについて計算デバイス・アーキテクチャーを示すコンピューター・アーキテクチャー図である。
【発明を実施するための形態】
【００１０】
[0019]  以下の詳細な説明は、スプレッドシート文書の選択された部分におけるデーターに合わせて個別に作成された１つ以上のデーター分析特化機能を提示するように構成された高速分析ツールのための概念および技術を目的とする。本明細書において説明する概念および技術の一部によれば、この高速分析ツールは、高速分析ツール移行ボタンを設け、このボタンが選択されると、コンテキスト・ユーザー・インターフェースを表示させる。このコンテキスト・ユーザー・インターフェースは、ユーザーが１つ以上のデーター分析特化機能に容易にアクセスし易くする。また、高速分析ツールは、ユーザーが、実際に特化機能を適用する前に、彼らのスプレッドシート文書に何が起こるのか正確に予め見ることができるメカニズムを設ける一方で、スプレッドシート・アプリケーションの新たなユーザーまたは初級(less advanced)ユーザーに対する、潜在的な習得の困難さや慣例上高い参入障壁(barrier of entry)を回避する。また、スプレッドシート・アプリケーションの中級ユーザーまたはもっと進んだユーザーも、スプレッドシート文書内のデーターにデーター分析特化機能を適用する効率向上のために、この高速分析ツールから利益が得られる。
【００１１】
[0020]  本明細書において説明する主題は、コンピューター・システム上におけるオペレーティング・システムおよびアプリケーション・プログラムの実行と合わせて実行するプログラム・モジュールという一般的なコンテキストで紹介されるが、他の実施態様が他のタイプのプログラム・モジュールと組みあわせて実行されてもよいことは当業者には認められよう。一般に、プログラム・モジュールはルーチン、プログラム、コンポーネント、データー構造、およびその他のタイプの構造を含み、これらは特定のタスクを実行するかまたは特定の抽象データー型を実装する。更に、本明細書において説明する主題は、ハンドヘルド・デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースまたはプログラマブル消費者電子機器、ミニコンピューター、メインフレーム・コンピューター等を含む、他のコンピューター・システム構成とでも実施できることは、当業者には認められよう。
【００１２】
[0021]  以下の詳細な説明では、その一部を形成する添付図面を参照する。添付図面では、例示として、具体的な実施形態または例が示される。これより図面を参照するが、図面では同様の番号は様々な図全体にわたって同様のエレメントを表す。図面では、スプレッドシート文書内部におけるある範囲のセルの選択に基づいて、スプレッドシート・アプリケーションのデーター分析特化機能を告知するために高速分析ツールを利用する、計算システム、コンピューター読み取り可能記憶媒体、およびコンピューター実装方法の態様が提示される。
【００１３】
[0022]  これより図１を参照して、本明細書において提示する種々の実施形態のための一動作環境１００の態様について説明する。図１に示す動作環境１００は、ネットワーク１０４上で動作するまたはネットワーク１０４と通信するクライアント・コンピューター１０２を含む。実施形態では、クライアント・コンピューター１０２がデスクトップ・コンピューター、ラップトップ・コンピューター、ノートブック・コンピューター、超携帯用コンピューター(ultra-portable computer)、ネットブック・コンピューター、または移動体電話機、タブレット・デバイス、スレート・デバイス、携帯用ビデオ・ゲーム・デバイスというような計算デバイス等である。クライアント・コンピューター１０２の例示的なアーキテクチャーについては、以下で図８および図１０を参照して例示し説明する。クライアント・コンピューター１０２は、オペレーティング・システム１０６、ならびに図示する実施形態では、スプレッドシート・アプリケーション１０８、ウェブ・ブラウザー・アプリケーション１１０、および／または１つ以上の他のアプリケーションというような１つ以上のアプリケーション・プログラムを実行するように構成される。ネットワーク１０４は、インターネット(an internet)、インターネット(the Internet)、イントラネット、またはエクストラネットであってもよい。当業者には理解されるように、ネットワーク１０４へのアクセスは、１つ以上の有線またはワイヤレス・アクセス・ネットワーク（図示せず）を通じて付与することができる。
【００１４】
[0023]  オペレーティング・システム１０６は、クライアント・コンピューター１０２の動作を制御するコンピューター・プログラムである。アプリケーション・プログラムは、本明細書において記載される種々の機能を設けるためにオペレーティング・システム１０６の上で実行するように構成された実行可能プログラムである。スプレッドシート・アプリケーション１０８は、行および列から成るシミュレートされたワークシートのセルにおいてデーター１１２を受けて表示するように構成されたアプリケーション・プログラムであり、このワークシートをここではスプレッドシート文書と呼ぶ。計算を行うために、データー１１２の全部または一部に１つ以上の式を適用することができる。データー１１２は、代わりにまたは加えて、表、チャート、スパークライン、およびその他の視覚エフェクトを作成するための基礎として用いることができる。
【００１５】
[0024]  ウェブ・ブラウザー・アプリケーション１１０は、ユーザーがネットワーク１０４を通じてワールド・ワイド・ウェブ（「ウェブ」）上の情報リソースにアクセスすることができるアプリケーション・プログラムである。更に、ウェブ・ブラウザー・アプリケーション１１０は、サーバー・コンピューター１１４によって提供される情報および種々の機能(function)に、１つ以上のウェブ・ページを通じてユーザーがアクセスすることを可能にする。これについては、以下で更に詳しく説明する。
【００１６】
[0025]  実施形態では、スプレッドシート・アプリケーション１０８が、ワシントン州、RedmondのMicrosoft Corporationから入手可能なMICROSOFT EXCEL、カリフォルニア州、CupertinoのApple Inc.から入手可能なAPPLE NUMBERS、カリフォルニア州、Redwood ShoresのOracle Corporationから入手可能なOPENOFFICE CALC等のような単体アプリケーションである場合もある。実施形態では、スプレッドシート・アプリケーション１０８が、ワシントン州、RedmondのMicrosoft Corporationから入手可能なMICROSOFT OFFICE、カリフォルニア州、CupertinoのApple Inc.から入手可能なAPPLE IWORK、カリフォルニア州、Redwood ShoresのOracle Corporationから入手可能なOPENOFFICE等のようなアプリケーション・スイートの一部である場合もある。実施形態では、スプレッドシート・アプリケーション１０８が、文書処理アプリケーション、プレゼンテーション・アプリケーション、ウェブ・ページ設計アプリケーション等のような他のアプリケーションにワークシートを埋め込むことをユーザーに可能にするように構成される場合もある。
【００１７】
[0026]  本明細書において更に詳しく説明するが、スプレッドシート・アプリケーション１０８は、スプレッドシート文書において選択されたデーター集合におけるデーターに合わせて個別に作成された１つ以上のデーター分析特化機能を提示するために、高速分析ツール１１６を利用するように構成される。実施形態では、高速分析ツール１１６は、高速分析ツール移行ボタンを設け、これが選択されると、コンテキスト・ユーザー・インターフェースが表示される。コンテキスト・ユーザー・インターフェースは、限定ではないが、式、条件付き書式、スパークライン、表、グラフ、およびピボット・テーブル等のような１つ以上のデーター分析特化機能にユーザーが容易にアクセスし易くする。更に、高速分析ツール１１４は、ユーザーが、これらのデーター分析特化機能の１つ以上を予め見るおよび／または適用することができるメカニズムを設ける一方で、新たなまたは複雑な特化機能で作業するときにユーザーが抱くかもしれない躊躇や半信半疑を回避し、更にスプレッドシート・アプリケーション１０８の新たなユーザーまたは初級(less advanced)ユーザーに対する、潜在的な習得の難しさや慣例上高い参入障壁を回避する。また、スプレッドシート・アプリケーション１０８の中級ユーザーまたはもっと進んだユーザーも、スプレッドシート文書内のデーターにデーター分析特化機能を適用する効率向上のために、この高速分析ツール１１６から利益が得られる。
【００１８】
[0027]  実施形態では、高速分析ツール１１６が、スプレッドシート・アプリケーション１０８の一部として設けられる場合がある。他の実施形態では、高速分析ツール１１６が、スプレッドシート・アプリケーション１０８、および／またはクライアント・コンピューター１０２上で実行するウェブ・ブラウザー・アプリケーション１１０のような他のアプリケーションに対するアドオンまたはアドインとして設けられる場合もある。
【００１９】
[0028]  実施形態では、高速分析ツール１１６が、少なくとも部分的に、１つ以上のデーター分析特化機能に対する告知(advertisement)として機能する場合がある。実施形態では、高速分析ツール１１６によって告知される特化機能が、スプレッドシート・アプリケーション１０８に対する更新を通じて追加される１つ以上の新たな特化機能を含む場合がある。実施形態では、高速分析ツール１１６によって告知される特化機能が、スプレッドシート・アプリケーション１０８の新バージョンに追加される１つ以上の新たな特化機能を含む場合がある。実施形態では、高速分析ツール１１６によって告知される特化機能が、スプレッドシート・アプリケーション１０８の開発者、スプレッドシート・アプリケーション１０８の流通業者、および／または１つ以上の特化機能を告知することを望む何らかの他者によって選択された１つ以上の特化機能を含む場合がある。実施形態では、高速分析ツール１１６によって告知される特化機能が、１つ以上の推奨エンジン１１８によって設けられる１つ以上のアルゴリズムを実行することによって、スプレッドシート・アプリケーション１０８によって選択される１つ以上の特化機能を含む場合がある。
【００２０】
[0029]  実施形態では、推奨エンジン１１８が、限定ではなく、高速分析ツール１１６を通じて利用可能となるデーター分析特化機能毎に、１つ以上の推奨エンジンを含む場合がある。推奨エンジン１１８は、スプレッドシート文書内部におけるある範囲のセルの選択というような、データー集合を入力として受け、入力として供給されたデーター集合に合わせて特定的に個別作成される１つ以上の推奨特化機能またはこれらの特化機能の推奨される変形を、高速分析ツール１１６による出力としての表示のために、供給するように構成される。高速分析ツール１１６に設けるデーター分析特化機能を決定するために特定の推奨エンジンによって使用されるアルゴリズム（１つまたは複数）の詳細は、本開示の範囲を超えることである。
【００２１】
[0030]  実施形態では、推奨エンジン１１８が、条件付き書式推奨エンジンを含むことがある。このエンジンは、所与のデーター集合に基づいて、１つ以上の条件付き書式特化機能、条件付き書式タイプ、および／または特定のタイプの条件付き書式規則の特定の構成を決定するために１つ以上のアルゴリズムを利用する。実施形態では、推奨エンジン１１８がチャート推奨エンジンを含むことがある。チャート推奨エンジンは、所与のデーター集合に基づいて、１つ以上のチャート特化機能、チャート・タイプ、および／または高速分析ツール１１に供給される特定のチャート・タイプの特定の構成を決定するために、１つ以上のアルゴリズムを利用する。実施形態では、推奨エンジン１１８が表推奨エンジンを含むことがある。表推奨エンジンは、所与のデーター集合に基づいて、高速分析ツール１１６に設けられる１つ以上の表特化機能を決定するために１つ以上のアルゴリズムを利用する。実施形態では、推奨エンジン１１８がピボット・テーブル推奨エンジンを含むことがある。ピボット・テーブル推奨エンジンは、所与のデーター集合に基づいて、１つ以上のピボット・テーブル・レイアウト、フィールドの分類、および／または個々のデーター・フィールドの配置（例えば、行上、列上、要約値として等）、ならびに概要計算選択肢（例えば、和、平均、計数など）、および高速分析ツール１１６に設けられる他のピボット・テーブル特化機能を決定するために、１つ以上のアルゴリズムを利用する。実施形態では、推奨エンジン１１８がスパークライン推奨エンジンを含むことがある。スパークライン推奨エンジンは、所与のデーター集合に基づいて、高速分析ツール１１６に供給される１つ以上のスパークリング特化機能を決定するために、１つ以上のアルゴリズムを利用する。実施形態では、推奨エンジン１１８が合計(totals)推奨エンジンを含むことがある。合計推奨エンジンは、所与のデーター集合に基づいて、高速分析ツール１１６に供給される１つ以上の合計特化機能(totals feature)を決定するために、１つ以上のアルゴリズムを利用する。
【００２２】
[0031]  サーバー・コンピューター１１４は、実施形態では、デスクトップ・コンピューター、ラップトップ・コンピューター、ノートブック・コンピューター、超携帯用コンピューター、ネットブック・コンピューター、または移動体電話機、タブレット・デバイス、スレート・デバイス、携帯用ビデオ・ゲーム・デバイスのような計算デバイス等である。サーバー・コンピューター１１４の例示的なアーキテクチャーについて、本明細書では、図８を参照して以下で図示し説明する。図示するサーバー・コンピューター１１４は、サーバー・オペレーティング・システム１２２、ならびにサーバー・スプレッド・アプリケーション１２２および／または１つ以上の他のアプリケーションというような１つ以上のアプリケーション・プログラムを実行するように構成される。サーバー・オペレーティング・システム１２０は、サーバー・コンピューター１１２の動作を制御するためのコンピューター・プログラムである。アプリケーション・プログラムは、本明細書において説明する種々の機能を設けるためにサーバー・オペレーティング・システム１２０の上で実行するように構成された実行可能プログラムである。
【００２３】
[0032]  実施形態では、サーバー・スプレッド・アプリケーション１２２が、スプレッドシート文書のセル内においてデーター１２４を受けて表示するように構成されたウェブ・ベースのアプリケーション・プログラムである場合がある。計算を行うために、データー１２４の全部または一部に１つ以上の式を適用することができる。データー１２４は、代わりにまたは加えて、表、チャート、スパークライン、および他の視覚エフェクトを作成するための基礎として用いることができる。
【００２４】
[0033]  実施形態では、サーバー・スプレッド・アプリケーション１２２が、ワシントン州、RedmondのMicrosoft Corporationから入手可能なMICROSOFT EXCEL、カリフォルニア州、CupertinoのApple Inc.から入手可能なAPPLE NUMBERS、カリフォルニア州、Redwood ShoresのOracle Corporationから入手可能なOPENOFFICE CALC等のウェブ・ベース・バージョンである場合もある。あるいは、実施形態では、サーバー・スプレッド・アプリケーション１２２が、カリフォルニア州、Mountain ViewのGoogle社から入手可能なGOOGLE SPREADSHEETSのような専用ウェブ・ベース・スプレッド・アプリケーションである場合もある。実施形態では、サーバー・スプレッド・アプリケーション１２２が、ワシントン州、RedmondのMicrosoft Corporationから入手可能なMICROSOFT OFFICE 365、カリフォルニア州、Mountain ViewのGOOGLE社から入手可能なGOOGLE DOCS等のようなウェブ・ベース・アプリケーション・スイートの一部である場合もある。いずれの場合でも、サーバー・スプレッド・アプリケーション１２２は、１つ以上のウェブ・ページを通じて入手可能であればよく、そしてクライアント・コンピューター１０２上で実行するウェブ・ブラウザー・アプリケーション１１０を通じてユーザーによってアクセスできればよい。
【００２５】
[0034]  実施形態では、サーバー・スプレッド・アプリケーション１２２が、文書処理アプリケーション、プレゼンテーション・アプリケーション、ウェブ・ページ設計アプリケーション等のような他のアプリケーションにワークシートを埋め込むことをユーザーに可能にするように構成される場合もある。実施形態では、サーバー・コンピューター１１４がサーバー・スプレッド・アプリケーション１２２を実行するように構成され、クライアント・コンピューター１０２がサーバー・コンピューター１１４にアクセスして、クライアント／サーバー構成においてサーバー・スプレッド・アプリケーション１２２と相互作用するように構成される場合もある。これらの実施形態では、サーバー・スプレッド・アプリケーション１２２は、スプレッドシート・アプリケーション１０８と同一の機能を設けることができる。
【００２６】
[0035]  サーバー・スプレッド・アプリケーション１２２は、スプレッドシート文書の選択されたデーター集合におけるデーターに合わせて個別に作成された１つ以上のデーター分析特化機能を提示するために、サーバー高速分析ツール１２６を利用するように構成される。実施形態では、サーバー高速分析ツール１２６が高速分析ツール移行ボタンを設け、これが選択されると、コンテキスト・ユーザー・インターフェースが表示される。コンテキスト・ユーザー・インターフェースは、限定ではないが、式、条件付き書式、スパークライン、表、グラフ、およびピボット・テーブルなどのような１つ以上のデーター分析特化機能にユーザーが容易にアクセスし易くする。更に、サーバー高速分析ツール１２６は、ユーザーが、これらのデーター分析特化機能の１つ以上を予め見るおよび／または適用することができるメカニズムを設ける一方で、新たなまたは複雑な特化機能で作業するときにユーザーが抱くかもしれない躊躇や半信半疑を回避し、更にサーバー・スプレッドシート・アプリケーション１２２の新たなユーザーまたは初級ユーザーに対する、潜在的な習得の難しさや慣例上高い参入障壁を回避する。また、サーバー・スプレッドシート・アプリケーション１２２の中級ユーザーまたは他のもっと進んだユーザーも、スプレッドシート文書内のデーターにデーター分析特化機能を適用する効率向上のために、この高速分析ツール１２６から利益が得られる。
【００２７】
[0036]  また、図示するサーバー・コンピューター１１４は、１つ以上の推奨エンジン１２８も含む。推奨エンジン１２８は、先に説明した推奨エンジン１１８と同様に構成されればよい。
【００２８】
[0037]  実施形態では、サーバー高速分析ツール１２６が、サーバー・スプレッド・アプリケーション１２２の一部として設けられる場合がある。他の実施形態では、サーバー高速分析ツール１２６が、サーバー・スプレッド・アプリケーション１２２および／またはサーバー・コンピューター１１４上で実行する他のアプリケーション（図示せず）に対してアドオンまたはアドインとして設けられる場合もある。
【００２９】
[0038]  尚、動作環境１００の実施態様には、多数のクライアント・コンピューター１０２、多数のネットワーク１０４、および／または多数のサーバー・コンピューター１１４を含む場合もあることは理解されてしかるべきである。また、多数のオペレーティング・システム１０６、多数のスプレッドシート・アプリケーション１０８、多数のウェブ・ブラウザー・アプリケーション１１０、多数の高速分析ツール１１６、および／または多数の推奨エンジン１１８がクライアント・コンピューター１０２によって使用されてもよいことも理解されてしかるべきである。また、多数のサーバー・オペレーティング・システム１２０、多数のサーバー・スプレッド・アプリケーション１２２、多数のサーバー高速分析ツール１２６、および／または多数のサーバー推奨エンジン１２８がサーバー・コンピューター１１２によって使用されてもよいことも理解されてしかるべきである。つまり、図示する実施形態は、例示として解釈してしかるべきであり、特に注記されない限り、決して限定であると解釈してはならない。
【００３０】
[0039]  これより、図２Ａおよび図２Ｂに移り、例示的な実施形態にしたがって、スプレッドシート文書内におけるあるセル範囲の選択に基づいて、スプレッドシート・アプリケーションのデーター分析特化機能を告知する(advertise)ために高速分析ツールを利用する方法２００の態様を示す。尚、ここで説明する方法の動作は、特定の順序では提示される必要は全くないこと、そして動作の一部または全部の代わりの順序（１つまたは複数）での実行も可能であり考えられることは、理解されてしかるべきである。これらの動作は、説明および例示を容易にするために、その実際に示す順序(demonstrated order)で提示されたのである。添付した請求項の範囲から逸脱することなく、動作を追加すること、省略すること、および／または同時に実行することもできる。
【００３１】
[0040]  また、図示の方法は、いずれの時点でも終了させることができ、その全体を実行する必要がないことも理解されてしかるべきである。これらの方法の一部または全部の動作、および／または実質的に同等の動作は、以下で定められるような、コンピューター記憶媒体上に含まれるコンピューター読み取り可能命令の実行によって遂行することができる。「コンピューター読み取り可能命令」という用語およびその異形は、本明細書および特許請求の範囲において用いられる場合、ルーチン、アプリケーション、アプリケーション・モジュール、プログラム・モジュール、プログラム、コンポーネント、データー構造、アルゴリズム等を含むように、ここでは広く用いられる。コンピューター読み取り可能命令は、単一プロセッサーまたはマルチプロセッサー・システム、ミニコンピューター、メインフレーム・コンピューター、パーソナル・コンピューター、ハンドヘルド計算デバイス、マイクロプロセッサー・ベースのプログラマブル消費者用電子機器、その組み合わせ等を含む、種々のシステム構成において実現することができる。
【００３２】
[0041]  つまり、本明細書において説明する論理動作は、（１）計算システム上で実行するコンピューター実装アクト(computer-implemented act)またはプログラム・モジュールのシーケンスとして、および／または（２）計算システム内部において相互接続された機械論理回路または回路モジュールとして実現される。実施態様は、計算システムの性能およびその他の要件に依存する選択事項である。したがって、本明細書において説明する論理動作は、状態、動作、構造的デバイス、アクト、またはモジュールといように、様々に呼ばれる。これらの動作、構造的デバイス、アクト、およびモジュールは、ソフトウェア、ファームウェア、特殊目的ディジタル・ロジック、およびそのあらゆる組みあわせで実現することができる。
【００３３】
[0042]  方法２００の動作について、ここでは少なくとも部分的に、クライアント・コンピューター１０２上で実行するスプレッドシート・アプリケーション１０８、高速分析ツール１１６、および／または推奨エンジン１１８によって実現されるものとして、以下に説明する。方法２００の動作の内１つ以上が、代わりにまたは加えて、サーバー・コンピューター１１４の同様のコンポーネントによって、少なくとも部分的に、実現されてもよい。
【００３４】
[0043]  最初に図２Ａに移ると、方法２００が開始し、動作２０２に進む。ここで、スプレッドシート・アプリケーション１０８が、スプレッドシート文書からの１つ以上のセルの選択を受ける。動作２０２から、方法２００は動作２０４に進み、ここでスプレッドシート・アプリケーション１０８は、選択されたセルが２つ以上の空白でないセルを含むか否か判定する。ここでは、２つ以上の空白でないセルの選択を、範囲、セル範囲、またはセルの範囲と呼ぶ。動作２０４において、スプレッドシート・アプリケーション１０８が、セルの範囲が選択されたと判断した場合、方法２００は動作２０６に進み、ここで、選択されたセルの範囲の近傍に、高速分析ツール１１６の高速分析ツール移行ボタンを示す。この高速分析ツール移行ボタンは、種々の形態をなすことができ、テキスト、グラフィック、アイコン、ビデオ、写真、記号、これらの何らかの組みあわせ等を含むが、これらに限定されるのではない。尚、高速分析ツール移行ボタンが、音声警告のような、音声コンポーネントを含んでもよいことが考えられる。
【００３５】
[0044]  実施形態では、高速分析ツール移行ボタンが、選択されたセルの範囲内におけるセルの少なくとも１つから指定距離以内に位置付けられる場合、高速分析ツール移行ボタンは、選択されたセルの範囲の近傍にあると考えられる。この距離は、ミリメートル、センチメートル、インチ、画素、または他の何らかの距離単位であってよい。実施形態では、高速分析ツール移行ボタンが、選択されたセルの範囲の近傍にあると考えられるのは、高速分析ツール移行ボタンが、選択されたセルの範囲内にあるセルの内少なくとも１つと、少なくとも部分的に交差する場合である。実施形態では、ユーザーに対して見えるように、高速分析ツール移行ボタンがスプレッドシート・アプリケーション１０８内のいずれかの位置に示される場合もあるが、選択されたセルの範囲の近傍にあるとは見なされない。    
【００３６】
[0045]  実施形態では、どの位目立って高速分析ツール移行ボタンが示されるか定めるために、１つ以上の卓立規則(prominence rule)が高速分析ツール移行ボタンに適用される場合がある。実施形態では、卓立規則は、スプレッドシート・アプリケーション１０８に、高速分析ツール移行ボタンを静止ボタンとして示すように命令する場合がある。実施形態では、卓立規則が、スプレッドシート・アプリケーション１０８に、高速分析ツール移行ボタンに対するマウスまたは他の入力（例えば、タッチ）の近接度に関係付けて、高速分析ツール移行ボタンの不透明性(opacity)を変化させるように命令する場合もある。例えば、マウスまたは他の入力デバイスによって制御されるカーソルが、高速分析ツール移行ボタンから指定距離以内にある場合、高速分析ツール移行ボタンは１００％の不透明度で提示されるが、カーソルがボタンから遠ざかるに連れて、半透明になり、ある時点において光景から消失する。
【００３７】
[0046]  実施形態では、タッチスクリーン・インターフェースを介してタッチされたとき、あるいは音声または他の何らかのユーザー入力を通じてユーザーによって他の方法で対話処理されたときに、卓立規則が、スプレッドシート・アプリケーション１０８に、高速分析ツール移行ボタンをマウス上に示すように命令する場合がある。実施形態では、卓立規則が、スプレッドシート・アプリケーション１０８に、所定の時間期間だけ高速分析ツール移行ボタンを示すように命令する場合もある。この所定の時間期間が経過すると、高速分析ツール移行ボタンが消されるか、または、例えば、マウス・オーバーによって現れるまたは何らかの他のユーザー入力を通じて現れるように再構成される。
【００３８】
[0047]  実施形態では、卓立規則が、スプレッドシート・アプリケーション１０８に、ユーザーの注意を高速分析ツール移行ボタンに引きつけるために、強調を付けて高速分析ツール移行ボタンを示すように命令する場合もある。高速分析ツール移行ボタンがテキストを含む実施形態では、例示的な強調のタイプには、フォント・タイプ、フォント・サイズ、太字、イタリック体、下線、上線、大文字化、文字間隔、句読点、色、これらの組みあわせ等を含むが、これらに限定されるのではない。高速分析ツール移行ボタンがグラフィック、アイコン、写真、または記号を含む実施形態では、例示的な強調のタイプには、サイズ、色、濃淡、明るさ、中間階調、特殊エフェクト、アニメーション、これらの組み合わせ等が含まれるが、これらに限定されるのではない。高速分析ツール移行ボタンがビデオを含む実施形態では、例示的な強調のタイプには、自動再生、自動拡大、自動最大画面等を含むが、これらに限定されるのではない。他の強調のタイプも考えられる。
【００３９】
[0048]  実施形態では、卓立規則が、スプレッドシート・アプリケーション１０８に、所定の回数だけ、高速分析ツール移行ボタンを表示するように命令する場合もある。実施形態では、卓立規則が、スプレッドシート・アプリケーション１０８に、所定の回数だけ高速分析ツール移行ボタンを示し、卓立がデフォルトの卓立状態に達するまで、高速分析ツール移行ボタンが示される卓立を毎回減らすように命令する場合もある。
【００４０】
[0049]  動作２０６から、方法２００は動作２０８に進み、ここで、スプレッドシート・アプリケーション１０８は、範囲選択が、スプレッドシート・アプリケーション１０８が起動された後における最初の範囲選択であるか否か判定を行う。範囲選択が、スプレッドシート・アプリケーション１０８が起動された後における最初の範囲選択であるとスプレッドシート・アプリケーション１０８が判定した場合、方法２００は動作２１０に進み、ここで、高速分析ツール１１６に対するツールチップ(tooltip)を示す。実施形態では、このツールチップは、高速分析ツール１１６の１つ以上の態様(aspects)を説明するために、テキストおよび／または写真あるいは他の画像を含む場合がある。実施形態では、ツールチップが、スプレッドシート・アプリケーション１０８によって表示されるアクティブなスプレッドシート文書の少なくとも一部の上に重なる場合がある。実施形態では、ツールチップが前景において示され、このツールチップとは関連がないユーザー・インターフェース・エレメントはいずれも背景において示される場合がある。これらの実施形態では、背景にあるユーザー・インターフェース・エレメントは、前景にあるツールチップよりもユーザーに見えにくくなるように、変更してもよい。例えば、背景をぼかすおよび／または暗くするのでもよい。
【００４１】
[0050]  実施形態では、ツールチップが有限期間だけ表示される場合もある。実施形態では、スプレッドシート・アプリケーション１０８が動作２０８において前述のように判定を行うことなく、ツールチップが自動的に表示される場合もある。実施形態では、所定回数のスプレッドシート・アプリケーションの起動の間動作２０８を繰り返し、この回数の後ツールチップはもはや示されない場合もある。実施形態では、ユーザーが選択を行っているときだけ、ツールチップが示されないが、マウスのホバリングのときに示されればよい場合もある。実施形態では、ツールチップを示すか否かが、好みメニューにおいてスプレッドシート・アプリケーション１０８によって与えられる選択肢によって、または他の何らかのユーザー・インターフェース・エレメントによって、ユーザーが構成可能である場合もある。
【００４２】
[0051]  動作２１０から、または動作２０８において、範囲選択がスプレッドシート・アプリケーション１０８が起動された後における最初の範囲選択ではないと、スプレッドシート・アプリケーション１０８が判定した場合、方法２００は図２Ｂへ、具体的には、動作２１２に進む。動作２１２において、スプレッドシート・アプリケーション１０８は、選択されたセルの範囲内部にあるデーターの１つ以上のデーター型を判定する。選択されたセルの範囲を検索してデーター型を求めるための例示的な方法３００について、以下で図３を参照しながら説明する。選択されたセルの範囲内においてセル値に対してデーター型を判定するための例示的な方法４００について、以下で図４を参照しながら説明する。
【００４３】
[0052]  動作２１２から、方法２００は動作２１４に進み、ここで、動作２１２において判定されたデーター型に対する適用に適している１つ以上のデーター分析特化機能を決定する。実施形態では、動作２１４における決定が、前述のような１つ以上の推奨アルゴリズムを実行することによって、少なくとも部分的に推奨エンジン１１８の内１つ以上によって行われる場合がある。動作２１４から、方法２００は動作２１６に進み、ここで、スプレッドシート・アプリケーション１０８は、高速分析ツール移行ボタンの選択を受ける。高速分析ツール移行ボタンの選択を受けたことに応答して、方法２００は動作２１８に進み、ここで、高速分析ツール１１６のユーザー・インターフェースを表示する。高速分析ツール１１６の種々の例示的なユーザー・インターフェースについて、本明細書では図５Ｂ〜図５Ｆ、図６、および図７を参照して以下で例示し説明する。
【００４４】
[0053]  動作２１８から、方法２００は動作２２０に進み、ここで、スプレッドシート・アプリケーション１０８は、高速分析ツール１１６のユーザー・インターフェースから、ある特化機能上におけるホバリング、ジェスチャー、または他の非選択フォーカス(non-selection focus)を受ける。次いで、方法２００は動作２２２に進み、選択されたセルの範囲におけるデーターに実際にこの特化機能を適用することなく、選択されたセルの範囲におけるデーターにこの特化機能がどのように作用するかユーザーに示すために、この特化機能のプレビューをユーザーに表示する。
【００４５】
[0054]  実施形態では、プレビューは、セルの範囲が選択されたワークシート内において、選択されたセルの範囲におけるデーターに一時的にその特化機能を適用する場合がある。本明細書では、これを「格子内」プレビュー(in grid preview)と呼ぶ。あるいは、実施形態では、プレビューが、１つ以上のポップアップ・ウィンドウにおいて、選択されたセルの範囲のデーターに特化機能を適用する場合もある。本明細書では、これを「ポップアップ」プレビューと呼ぶ。
【００４６】
[0055]  実施形態では、特化機能のタイプまたは特定の特化機能に対して用いられるプレビューのタイプが、スプレッドシート・アプリケーション１０８の開発者によって、その特化機能のタイプまたは特化機能の機能性(functionality)に基づいて、選択される場合もある。例えば、オブジェクトを表示するために新たなワークシートにナビゲートすることは、ユーザーにとって混乱を招くまたはユーザーがまごつくこともあり得るので、ピボット・テーブルのように、他のワークシート内でオブジェクトを作成する特化機能の方が、ポップアップ・プレビューに適している。実施形態では、格子内プレビューが、条件付き書式、スパークライン、および合計に用いられ、一方ポップアップ・プレビューが、表、ピボット・テーブル、およびチャートに用いられる場合もある。実施形態では、メニューにおける好みの選択肢を通じてというようにして、特化機能のタイプまたは特定の特化機能が格子内ウィンドウまたはポップアップ・ウィンドウを介して予め見られるのか否か、ユーザーによって構成可能である場合もある。
【００４７】
[0056]  動作２２２から、歩法２００は動作２２４にすすみ、ここで、スプレッドシート・アプリケーション１０８は、高速分析ツール１１６のユーザー・インターフェースを通じて、特化機能の選択を受ける。次いで、方法２００は動作２２６に進み、ここで、動作２２４において選択した特化機能を、選択されたセルの範囲におけるデーターに適用する。次いで、方法２００は動作２２８に進む。方法２００は動作２２８において終了する。
【００４８】
[0057]  図２Ａに戻り、スプレッドシート・アプリケーション１０８が、動作２０４において、セルの範囲が選択されていないと判定した場合、方法は図２Ｂ、具体的には、動作２２８に進む。方法２００は、動作２２８において終了する。
【００４９】
[0058]  図３に移り、例示的な実施形態にしたがって、選択されたセルの範囲を検索してデーター型を求める方法３００について説明する。方法３００は、開始して動作３０２に進み、ここで、スプレッドシート・アプリケーション１０８は、選択されたセルの範囲を検索して特定のデーター型を求める。尚、方法３００が複数のデーター型を求めて繰り返すことも考えられる。例示的なデーター型には、テキスト、数値、および日付けが含まれるが、方法３００は他のデーター型にも等しく適用可能である。
【００５０】
[0059]  動作３０２から、方法３００は動作３０４に進み、ここで、スプレッドシート・アプリケーション１０８は、検索の基になるデーター型が、当該セルの範囲に含まれるセルのいずれかにおいて発見されたか否か判定を行う。動作３０４において、スプレッドシート・アプリケーション１０８がそのデーター型が発見されたと判定した場合、方法３００は動作３０６に進み、ここでそのデーター型が、選択されたセルの範囲にあると指定する。実施形態では、TRUE演算子によって、選択されたセルの範囲にそのデーター型があることが指定される場合がある。次いで、方法３００は動作３０８に進む。方法３００は動作３０８において終了する。
【００５１】
[0060]  動作３０４において、スプレッドシート・アプリケーション１０８が、データー型が発見されなかったと判定した場合、方法３００は動作３１０に進み、ここで、そのデーター型は、選択されたセルの範囲にはないことが指定される。実施形態では、FALSE演算子によって、データー型が選択されたセルの範囲にないことが指定される場合がある。次いで、方法３００は動作３０８に進み、ここで方法３００は終了する。
【００５２】
[0061]  これより図４に移り、例示的な実施形態にしたがって、選択されたセルの範囲内におけるセル値についてデーター型を判定する方法４００について説明する。方法４００は開始して動作４０２に進み、ここで、スプレッドシート・アプリケーション１０８はセル値を受ける。尚、所与の選択されたセルの範囲についてのセル値は、方法４００にしたがって、順次または同時に処理されてもよいことが考えられる。更に、方法４００が、図３を参照して先に説明した検索動作３０２、３０４の一部として処理されてもよい。
【００５３】
[0062]  動作４０２から、方法４００は動作４０４に進み、ここで、スプレッドシート・アプリケーション１０８は、セル値が数値タイプとして評価されるか否か判定する。スプレッドシート・アプリケーション１０８が、セル値が数値タイプとして評価されると判定した場合、方法４００は動作４０６に進み、ここでスプレッドシート・アプリケーション１０８は、このセル値のフォーマットが、月／日／年または他の何らかの日付けフォーマットといような、日付けフォーマットに一致するか否か判定する。動作４０６において、スプレッドシート・アプリケーション１０８が、セル値が日付けフォーマットに一致すると判定した場合、方法４００は動作４０８に進み、ここで、スプレッドシート・アプリケーション１０８は、セル値のデーター型を日付けデーター型であると判定する。次いで、方法４００は動作４１０に進む。方法４００は動作４１０において終了する。
【００５４】
[0063]  動作４０４において、スプレッドシート・アプリケーション１０８が、セル値が数値データー型として評価されないと判定した場合、方法４００は動作４１２に進み、ここで、スプレッドシート・アプリケーション１０８は、セル値のデーター型がテキスト・データー型であると判定する。次いで、方法４００は動作４１０に進む。方法４００は動作４１０において終了する。
【００５５】
[0064]  動作４０６において、スプレッドシート・アプリケーション１０８が、セル値が日付けフォーマットと一致しないと判定した場合、方法４００は動作４１２に進み、ここで、スプレッドシート・アプリケーション１０８は、セル値のデーター型が数値データー型であると判定する。次いで、方法４００は動作４１０に進む。方法４００は動作４１０において終了する。
【００５６】
[0065]  尚、方法４００は、他のデーター型を組み込む(incorporate)ように変更できることも考えられる。したがって、数値データー型、テキスト・データー型、および日付けデーター型が、適したデーター型の例として用意されるが、適用に適した１つ以上のデーター分析特化機能の判定の基準として用いることができる、該当するデーター型を限定することを意図するのではない。
【００５７】
[0065]  これより図５Ａ〜図５Ｆに移り、種々の例示的な実施形態にしたがって、高速分析ツール１１６のような、高速分析ツールのユーザー・インターフェースの態様を例示するユーザー・インターフェース図について説明する。最初に図５Ａを参照して、本明細書において開示する一実施態様による、スプレッドシート・アプリケーション１０８のようなスプレッドシート・アプリケーション・プログラムによって設けられる例示的なユーザー・インターフェース５００を示す。図示するユーザー・インターフェース５００は、リボン・インターフェース５０２を含む。リボン・インターフェース５０２は、タブ・バー５０４におけるタブ上に置かれる１組のツール・バーを含むユーザー・インターフェースである。図示する実施形態では、リボン・インターフェース５０２のタブ・バー５０４は、ファイル、ホーム、挿入、ページ・レイアウト、式、データー、見直し、およびビューのタブを含む。また、図示する実施形態では、挿入タブが選択され、テーブル、チャート、およびスパークラインに関連する種々のツール・バーがリボン・インターフェース本体５０６に示される。リボン・インターフェース本体５０６に示されるツール・バーは、各々、ツール・バーによって設けられる特化機能のタイプについて表現アイコン(representative icon)を含む。ツール・バーの一部は、拡張ボタン５１０を含み、これを選択すると、種々の利用可能な棒グラフがユーザーに表示される。代わりのタブおよび／または追加のタブも考えられ、スプレッドシート・アプリケーション１０８においてユーザーが実行するタスクのタイプに基づいて様々に変化してもよい。リボン・インターフェース５０２は、特定のタブを含むようにおよび／またはタブ内にツール・バーを含むように、ユーザーによってカスタム化することもできる。
【００５８】
[0067]  また、図示するユーザー・インターフェース５００は、ワークシート５１２も含む。ワークシート５１２は、複数の行および列、ならびにサンプル・データーを含む。実施形態では、ワークシート５１２が１つ以上のワークシートを含むスプレッドシート文書の一部である場合もある。図示するワークシート５１２は、８つの列を含み、各々には異なるデーターのカテゴリーが付けられている。具体的には、図示するワークシート５１２は、名前列５１４、州／県列５１６、国／領域列５１８、担当地域(territory)列５２０、担当地域グループ列５２２、販売２００９列５２４、販売２０１０列５２６、および販売２０１１列５２８を含む。列５１４〜４２８の各々に含まれるデーターは、例示の目的のためであり、限定することは全く意図していない。ワークシート５１２は、図示する実施形態に示される行および列の数に限定されるのではない。更に、ワークシート５１２はあらゆるセルにデーターが入力される必要はない。
【００５９】
[0068]  図示する実施形態では、ワークシート５１２の一部５３０が選択されている。選択された部分５３０は、ユーザーがワークシート５１２内においてセル５３２を選択し、マウス・ボタンを押し下げ続けてまた他の方法で選択を維持し、マウス・カーソル５３４を下方にドラッグして他のセル５３５を横切って部分５３０を選択することによって作成されたことが示される。図示する実施形態は、マウス入力によるワークシート５１２内における複数のセルの選択を中心に説明したが、ワークシート５１２内部で１つ以上のセルを選択するためには、他の入力を用いることもでき、これら他の入力には、タッチ入力、音声入力、キーボード入力、これらの組みあわせ等が含まれるが、これらに限定されるのではない。
【００６０】
[0069]  また、図示するユーザー・インターフェース５００は、高速分析ツール移行ボタン５３６も含む。高速分析ツール移行ボタン５３６は、虫眼鏡アイコンとして図示されているが、このアイコンは限定であることを全く意図していない。高速分析ツール移行ボタン５３６は、先に説明したような代わりの形態でも構成することができる。高速分析ツール移行ボタン５３６の外観は、同様に先に説明した１つ以上の卓立規則に基づいて決定するのでもよい。
【００６１】
[0070]  これより図５Bに移り、例示的な実施形態による、簡略化したユーザー・インターフェース５３８について説明する。簡略化したユーザー・インターフェース５３８は、ワークシート４１２、選択部分５３０、マウス・カーソル５３４、および前述したような高速分析ツール移行ボタン５３６を含む。図示する実施形態では、マウス・カーソル５３４が、高速分析ツール移行ボタン５３６と交差している。これは、マウス・クリックまたはマウス・オーバー(mouse over)を示すことができる。図示する実施形態では、高速分析ツール移行ボタン５３６がマウスによってクリックされたかまたは他の方法で選択され、これに応答して、高速分析ツール・ユーザー・インターフェース５４０が表示されることを仮定する。
【００６２】
[0071]  高速分析ツール・ユーザー・インターフェース５４０は、複数のタブ５４２Ａ〜５４２Ｅを含む。しかしながら、実施形態では、タブがないインターフェースが使用されることもある。図示する実施形態では、条件付き書式タブ５４２Ａが選択されており、これに応答してギャラリー５４４が示される。ギャラリー５４４は、選択された部分５４０に含まれるデーターに適用するのに適した１つ以上の特化機能の１つ以上の表現５４６を示すように構成される。表現５４６はアイコンおよびテキストとして示されるが、表現５４６は、代わりに、アイコン、テキスト、または１つ以上の特化機能を識別するための他の何らかの視覚表現を含むこともできる。実施形態では、表現５４６の内１つ以上が、特定の特化機能のためにスプレッドシート・アプリケーション１０８においていずれかの場所で用いられた表現と同じである場合もある。他の実施形態では、特定の特化機能のためにスプレッドシート・アプリケーション１０８においていずれかの場所で用いられた表現の代わりに、簡略化されたアイコンまたそうでなければ威圧が少ない(less intimidating)アイコン、テキスト、あるいは他の視覚表現が用いられる。実施形態では、マウス・オーバーまたはユーザーが特定の特化機能についてもっと多くの情報を発見する(find out)ことに興味があることの他の指示に応答して、特化機能についての追加情報が示される場合もある。例えば、タッチ・インターフェースでは、タップおよびホールド・ジェスチャー(tap and hold gesture)が、追加情報を示すことを誘起するために用いられてもよい。
【００６３】
[0072]  図示する実施形態では、条件付き書式タブ５４２Ａは、データー・バー特化機能、カラー・スケール特化機能、アイコン・セット特化機能、＞特化機能(greater than feature)、上位１０％特化機能、およびクリア特化機能に対する表現を含む。図示する特化機能を条件付き書式タブ５４２Ａに含ませるのは、選択された部分５３０に含まれるデーターのデーター型（１つまたは複数）に基づいて推奨エンジン１１８のような１つ以上の推奨エンジンによって行われる決定に基づく。図示する特化機能は、単に例示の目的で用いられるのであって、限定することは全く意図していない。これらの図示した特化機能によって設けられる特定の機能性(functionality)は、本開示の範囲を超える。当業者は、追加のおよび／または代わりの特化機能の条件付き書式タブ５４２Ａへの適用可能性を認めよう。
【００６４】
[0073]  これより図５Ｃに移り、スパークライン・タブ５２４Ｂが選択された高速分析ツール・ユーザー・インターフェース５４０を示す。図示する実施形態では、スパークライン・タブ５２４Ｂは、折れ線スパークライン特化機能、棒スパークライン特化機能、および勝／負スパークライン特化機能(win/loss sparkline feature)に対する表現５４６を含む。図示する特化機能をスパークライン・タブ５２４Ｂに含ませることは、選択された部分５３０に含まれるデーターのデーター型（１つまたは複数）に基づいて推奨エンジン１１８のような１つ以上の推奨エンジンによって行われる決定に基づく。図示する特化機能は、単に例示の目的で用いられるのであって、限定することは全く意図していない。これらの図示した特化機能によって設けられる特定の機能性は、本開示の範囲を超える。当業者は、追加のおよび／または代わりの特化機能の条件付き書式タブ５４２Ｂへの適用可能性を認めよう。
【００６５】
[0074]  これより図５Ｄに移り、チャート・タブ５４２Ｃが選択された高速分析ツール・ユーザー・インターフェース５４０を示す。図示する実施形態では、チャート・タブ５４２Ｃが、棒グラフ特化機能、折れ線グラフ特化機能、円グラフ特化機能、横棒グラフ特化機能、面グラフ特化機能、および散布図(scatter chart)特化機能の対する表現５４６を含む。図示する特化機能をスパークライン・タブ５２４Ｃに含ませることは、選択された部分５３０に含まれるデーターのデーター型（１つまたは複数）に基づいて推奨エンジン１１８のような１つ以上の推奨エンジンによって行われる決定に基づく。図示する特化機能は、単に例示の目的で用いられるのであって、限定することは全く意図していない。これらの図示した特化機能によって設けられる特定の機能性は、本開示の範囲を超える。当業者は、追加のおよび／または代わりの特化機能の条件付き書式・タブ５４２Ｃへの適用可能性を認めよう。
【００６６】
[0075]  これより図５Ｅに移り、テーブル・タブ５４２Ｄが選択された高速分析ツール・ユーザー・インターフェース５４０を示す。図示する実施形態では、テーブル・タブ５４２Ｄが、ピボット・テーブル特化機能および表特化機能に対する表現５４６を含む。図示する特化機能をスパークライン・タブ５２４Ｄに含ませることは、選択された部分５３０に含まれるデーターのデーター型（１つまたは複数）に基づいて推奨エンジン１１８のような１つ以上の推奨エンジンによって行われる決定に基づく。図示する特化機能は、単に例示の目的で用いられるのであって、限定することは全く意図していない。これらの図示した特化機能によって設けられる特定の機能性は、本開示の範囲を超える。当業者は、追加のおよび／または代わりの特化機能のテーブル・タブ５４２Ｄへの適用可能性を認めよう。
【００６７】
[0076]  これより図５Ｆに移り、合計タブ５４２Ｅが選択された高速分析ツール・ユーザー・インターフェース５４０を示す。図示する実施形態では、合計タブ５４２Ｅが、ピボット列合計特化機能、列平均特化機能、列割合合計特化機能(column percentage total feature)、列実行合計特化機能(column running total feature)、および行合計特化機能対する表現５４６を含む。図示する特化機能を合計タブ５２４Ｅに含ませることは、選択された部分５３０に含まれるデーターのデーター型（１つまたは複数）に基づいて推奨エンジン１１８のような１つ以上の推奨エンジンによって行われる決定に基づく。図示する特化機能は、単に例示の目的で用いられるのであって、限定することは全く意図していない。これらの図示した特化機能によって設けられる特定の機能性は、本開示の範囲を超える。当業者は、追加のおよび／または代わりの特化機能の合計タブ５４２Ｅへの適用可能性を認めよう。
【００６８】
[0077]  これより図６に移り、タッチ対応高速分析ツール・ユーザー・インターフェース６０２を有する例示的タブレット・デバイス６００を示す。タブレット・デバイス６００は、以下で図１０を参照して説明する計算デバイス・アーキテクチャーの全部または一部を利用することができる。図示する実施形態では、タッチ対応高速分析ツール・ユーザー・インターフェース６０２は、タッチ対応高速分析ツール移行ボタン６０４の選択によって、１回または多数回のタッチ・ジェスチャーを通じて誘起される。タッチ対応高速分析ツール・ユーザー・インターフェース６０２およびタッチ対応高速分析ツール移行ボタン６０４の機能は、それぞれ、高速分析ツール・ユーザー・インターフェース５４０および高速分析ツール移行ボタン５３６について先に説明した機能と同様であってもよい。
【００６９】
[0078]  これより図７に移り、タブレット・デバイス６００を、代わりのタッチ対応高速分析ツール・ユーザー・インターフェース７００と共に示す。代わりのタッチ対応高速分析ツール・ユーザー・インターフェース７００は、垂直選択メニュー７０２、ギャラリー７０４、ギャラリー選択７０６、ライブ・プレビュー７０８、および選択された部分７１０を含む。垂直選択メニュー７０２は、特化機能カテゴリーの選択のための垂直スワイプ・ジェスチャー(vertical swipe gesture)およびタップに応答するように構成される。図示する特化機能カテゴリーは、先に説明した特化機能タブ５４２Ａ〜５４２Ｅと同じである。垂直選択メニュー７０２からこれらの特化機能カテゴリーの内１つを選択すると、選択されたカテゴリー内にある特化機能の表現を含むギャラリー７０４が示される。図示する実施形態では、チャート・カテゴリーが選択されており、これに応答して、カテゴリー７０４は、種々のチャート特化機能の表現を含む。
【００７０】
[0079]  ギャラリー選択７０６は、ユーザーがギャラリー７０４から棒グラフ特化機能を選択したことを示す。図示する実施形態では、ライブ・プレビュー７０８が、ギャラリー選択７０６にしたがって、ワークシートからのデーターの選択部分７１０を棒グラフで示す。尚、ユーザーがライブ・プレビュー７０８上においてタップしてまたはタッチ・ジェスチャーを用いて、ライブ・プレビュー７０８内に表示されたチャートまたは他の情報を拡大し(zoom in)もっと近くからのビューを求めることが考えられる。実施形態では、ライブ・プレビュー７０８の選択によって、内部に含まれる情報を拡大させる場合もある。実施形態では、ライブ・プレビュー７０８に含まれる情報が最大画面まで拡大される場合もある。また、ユーザーが同様に選択部分７１０と対話処理できることも考えられる。選択部分７１０を拡大すると、例えば、選択部分７１０が選択されたワークシート内部で選択部分７１０を取り囲む１つ以上のセルを含む追加のコンテキストを与えることができる。実施形態では、選択部分７１０にタッチすると、ユーザーをタッチ対応ユーザー・インターフェースに戻す場合もある。このタッチ対応ユーザー・インターフェースは、ユーザー・インターフェース５００、あるいは先に本明細書において説明した簡略化ユーザー・インターフェースと視覚的に同様または同一である。
【００７１】
[0080]  図８は、態様の中でもとりわけ、スプレッドシート文書内におけるセルの範囲の選択に基づいて、高速分析ツールを利用してスプレッドシート・アプリケーションのデーター分析特化機能を告知するために、本明細書において説明したソフトウェア・コンポーネントを実行することができるデバイスの例示的なコンピューター・アーキテクチャー８００を示す。つまり、図８に示すコンピューター・アーキテクチャー８００は、サーバー・コンピューター、移動体電話機、ＰＤＡ、スマート・フォン、デスクトップ・コンピューター、ネットブック・コンピューター、タブレット・コンピューター、および／またはラップトップ・コンピューターのアーキテクチャーを例示する。コンピューター・アーキテクチャー８００は、本明細書において紹介したソフトウェア・コンポーネントのあらゆる態様を実行するために利用することができる。
【００７２】
[0081]  実施形態では、クライアント・コンピューター１０２および／またはサーバー・コンピューター１１４が、コンピューター・アーキテクチャー８００にしたがって構成される。したがって、クライアント・コンピューター１０２およびサーバー・コンピューター１１４のソフトウェア・コンポーネントは、図示を容易にするために、コンピューター・アーキテクチャー８００内部に一緒に示すこととする。しかしながら、これらのソフトウェア・コンポーネントは、クライアント／サーバー構成における別個のクライアント・コンピューターおよびサーバー・コンピューターにおいて、あるいはクライアント・コンピューター１０２およびサーバー・コンピューター１１４の一方または双方において実行する単体のソフトウェア・コンポーネントとして実現されてもよく、そして実現されるのが適当である(likely)ことは理解されてしかるべきである。
【００７３】
[0082]  図８に示すコンピューター・アーキテクチャー８００は、中央処理ユニット８０２（「ＣＰＵ」）、ランダム・アクセス・メモリー８０６（「ＲＡＭ」）およびリード・オンリー・メモリー（「ＲＯＭ」）８０８を含むシステム・メモリー８０８、ならびにメモリー８０４をＣＰＵ８０２に結合するシステム・バス８１０を含む。起動中のように、コンピューター・アーキテクチャー８００内のエレメント間で情報を転送するのに役立つ基本ルーチンを収容する基本入力／出力システムが、ＲＯＭ８０８に格納される。更に、コンピューター・アーキテクチャー８００は、オペレーティング・システム１０６およびサーバー・オペレーティング・システム１２０、ならびにスプレッドシート・アプリケーション・プログラム１０８、サーバー・スプレッドシート・アプリケーション・プログラム１２２、およびウェブ・ブラウザー・アプリケーション１１０を含むがこれらに限定されない、１つ以上のアプリケーション・プログラムを格納する大容量記憶デバイス８１２も含む。また、図示する大容量記憶デバイス８１２は、高速分析ツール１１６、サーバー高速分析ツール１２６、推奨エンジン（１つまたは複数）１１８、およびサーバー推奨エンジン（１つまたは複数）１２８も格納する。
【００７４】
[0083]  大容量記憶デバイス８１２は、ＣＰＵ８０２に、バス８１０に接続された大容量記憶コントローラー（図示せず）を通じて接続される。大容量記憶デバイス８１２およびそれに付随するコンピューター読み取り可能媒体は、コンピューター・アーキテクチャー８００に不揮発性ストレージを設ける。本明細書に含まれるコンピューター読み取り可能媒体の説明は、ハード・ディスクまたはＣＤ−ＲＯＭドライブというような大容量記憶デバイスに言及するが、コンピューター読み取り可能媒体は、コンピューター・アーキテクチャー８００によってアクセスすることができる、あらゆる入手可能なコンピューター記憶媒体または通信媒体とすることができる。
【００７５】
[0084]  通信媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、または他のデーターを、搬送波のような変調データー信号または他の伝送メカニズムにおいて含み、あらゆる配信媒体を含む。「変調データー信号」という用語は、信号内に情報をエンコードするようなやり方で、その特性の内１つ以上が設定または変更されている信号を意味する。一例として、そして限定ではなく、通信媒体は、有線ネットワークまたは直接有線接続のような有線媒体と、音響、ＲＦ、赤外線、またはその他のワイヤレス媒体のようなワイヤレス媒体とを含む。以上の内のいずれの組み合わせも、コンピューター読み取り可能媒体の範囲内に含まれてしかるべきである。
【００７６】
[0085]  一例として、そして限定ではなく、コンピューター記憶媒体は、揮発性および不揮発性、リムーバブルおよび非リムーバブル媒体を含むことができ、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、または他のデーターというような情報の記憶のためのいずれかの方法または技術によって実現される。例えば、コンピューター媒体は、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリーまたは他のソリッド・ステート・メモリー技術、ＣＤ−ＲＯＭ、ディジタル・バーサタイル・ディスク（「ＤＶＤ」）、ＨＤ−ＤＶＤ、ＢＬＵ−ＲＡＹ（登録商標）、または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたは他の磁気記憶デバイス、あるいは所望の情報を格納するために用いることができコンピューター・アーキテクチャー８００によってアクセスすることができる他のあらゆる媒体も含むが、これらに限定されるのではない。特許請求の範囲に限って言うと、「コンピューター記憶媒体」という句およびその変形は、波、信号、および／または他の一時的および／または無形通信媒体を本来(per se)含まない。
【００７７】
[0086]  種々の実施形態によれば、コンピューター・アーキテクチャー８００は、ネットワーク１０４および／または他のネットワーク（図示せず）を通じて、リモート・コンピューターへの論理接続を用いてネットワーク接続環境において動作することもできる。コンピューター・アーキテクチャー８００は、バス８１０に接続されたネットワーク・インターフェース・ユニット８１４を介して、ネットワーク１０４に接続することができる。尚、ネットワーク・インターフェース・ユニット８１４は、他のタイプのネットワークおよびリモート・コンピューター・システムに接続するために利用されてもよいことは認められてしかるべきである。また、コンピューター・アーキテクチャー８００は、キーボード、マウス、または電子スタイラス（図８には示されない）を含む多数の入力デバイスからの入力を受けて処理する入力／出力コントローラー８１６も含むことができる。同様に、入力／出力コントローラー８１６は、出力を表示画面、プリンター、または他のタイプの出力デバイス（図８には示されない）に供給することができる。
【００７８】
[0087]  尚、本明細書において説明したソフトウェア・コンポーネントは、ＣＰＵ８０２にロードされ実行されると、ＣＰＵ８０２およびコンピューター・アーキテクチャー８００全体を汎用計算システムから、本明細書において紹介した機能を容易に実行するようにカスタム化された特殊目的計算システムに変態(transform)できることは認められてしかるべきである。ＣＰＵ８０２は、いずれの数のトランジスターまたは他のディスクリート回路エレメントからでも組み立てることができ、これらのエレメントは、個別にまたは集合的にあらゆる数の状態にでもなる(assume)ことができる。更に具体的には、ＣＰＵ８０２は、本明細書において開示したソフトウェア・モジュール内に収容された実行可能命令に応答して、有限状態機械として動作することもできる。これらのコンピューター実行可能命令は、ＣＰＵ８０２が状態間でどのように遷移するか指定することによって、ＣＰＵ８０２を変態し、これによって、ＣＰＵ８０２を構成するトランジスターまたは他のディスクリート回路エレメントを変態することができる。
【００７９】
[0088]  本明細書において紹介したソフトウェア・モジュールをエンコードすることによっても、本明細書において紹介したコンピューター読み取り可能媒体の物理的構造を変形することができる。物理的構造の具体的な変形は、本明細書の異なる実施態様における種々の要因に依存する場合もある。このような要因の例には、コンピューター読み取り可能媒体を実現するために用いられる技術、コンピューター読み取り可能媒体が主ストレージまたは副ストレージのどちらとして特徴付けられるか等を含むことができるが、これらに限定されるのではない。例えば、コンピューター読み取り可能媒体が半導体ベース・メモリーとして実現される場合、本明細書において開示したソフトウェアは、半導体メモリーの物理的状態を変化させる(transform)ことによって、コンピューター記憶媒体上にエンコードすることができる。例えば、ソフトウェアは、半導体メモリーを構成するトランジスター、キャパシター、または他のディスクリート回路エレメントの状態を変化させることもできる。また、ソフトウェアは、データーを格納するために、このようなコンポーネントの物理的状態を変化させることもできる。
【００８０】
[0089]  他の例として、本明細書において開示したコンピューター読み取り可能媒体は、磁気または光技術を用いて実現することもできる。このような実施態様では、本明細書において紹介したソフトウェアは、このソフトウェアがエンコードされるときに、磁気または光媒体の物理的状態を変化させることができる。これらの変化は、所与の磁気媒体内の特定の位置の磁気特性を変化させることを含むことができる。また、これらの変化は、所与の光媒体内における特定の位置の物理的特徴または特性を変化させ、これらの位置の光学特性を変化させることも含むことができる。本明細書の範囲および主旨から逸脱することなく、物理媒体の他の変化も可能であり、以上の例は、この論述を容易にするために与えられるに過ぎない。
【００８１】
[0090]  以上のことを考慮して、本明細書において説明したソフトウェア・コンポーネントを格納および実行するために、コンピューター・アーキテクチャー８００内において多くのタイプの物理的変化が生ずることは認められてしかるべきである。また、コンピューター・アーキテクチャー８００は、ハンドヘルド・コンピューター、埋め込み型コンピューター・システム、パーソナル・ディジタル・アシスタント、および当業者には知られている他のタイプの計算デバイスを含む、他のタイプの計算デバイスを含んでもよいことも認められてしかるべきである。また、コンピューター・アーキテクチャー８００が図８に示すコンポーネントの全てを含まなくてもよいこと、図８には明示的に示されない他のコンポーネントを含んでもよいこと、または図８に示すものとは完全に異なるアーキテクチャーを利用してもよいことも考えられる。
【００８２】
[0091]  図９は、態様の中でもとりわけ、スプレッドシート文書内におけるある範囲のセルの選択に基づいて、高速分析ツールを利用してスプレッドシート・アプリケーションのデーター分析特化機能を告知するために、本明細書において説明したソフトウェア・コンポーネントを実行することができる、例示的な分散型計算環境９００を示す。つまり、図９に示す分散型計算環境９００は、本明細書において紹介したソフトウェア・コンポーネントのいずれの態様でも実行するために利用することができる。例えば、分散型計算環境９００は、スプレッドシート・アプリケーション１０８、サーバー・スプレッドシート・アプリケーション１２２、高速分析ツール１１６、サーバー高速分析ツール１２６、推奨エンジン（１つまたは複数）１１８、サーバー推奨エンジン（１つまたは複数）１２８、および／または本明細書において説明した他のソフトウェア・コンポーネントの態様を実行するために利用することができる。
【００８３】
[0092]  種々の実施態様によれば、分散型計算環境９００は、ネットワーク９０４上で動作する、またはネットワーク９０４と通信する、またはネットワーク９０４の一部として、計算環境９０２を含む。ネットワーク９０４は、図１を参照して先に説明したネットワーク１０４であってもよく、またはネットワーク１０４を含んでもよい。また、ネットワーク９０４は種々のアクセス・ネットワークを含むこともできる。１つ以上のクライアント・デバイス９０６Ａ〜９０６Ｎ（以後纏めておよび／または全体的に「クライアント９０６」と呼ぶ）は、ネットワーク９０４および／または他の接続（図９には示されない）を介して計算環境９０２と通信することができる。図示する実施形態では、クライアント９０６は、ラップトップ・コンピューター、デスクトップ・コンピューター、または他の計算デバイスというような計算デバイス９０６Ａ、スレートまたはタブレット計算デバイス（「タブレット計算デバイス」）９０６Ｂ、移動体電話機、スマート・フォンまたは他の移動体計算デバイスのような移動体計算デバイス９０６Ｃ、サーバー・コンピューター９０６Ｄ、および／または他のデバイス９０６Ｎを含む。尚、いずれの数のクライアント９０６でも計算環境９０２と通信できることは理解されてしかるべきである。クライアント９０６に対する２つの計算アーキテクチャー例について、本明細書では図８および図１０を参照して図示し説明する。尚、本明細書において図示するクライアント９０６および図示し説明する計算環境は例示であり、決して限定するよう解釈してはならないことは理解されてしかるべきである。
【００８４】
[0093]  図示する実施形態では、計算環境９０２は、アプリケーション・サーバー９０８、データー・ストレージ９１０、および１つ以上のネットワーク・インターフェース９１２を含む。種々の実施態様によれば、アプリケーション・サーバー９０８の機能は、ネットワーク９０４の一部として実行するまたはネットワーク９０４と通信する１つ以上のサーバー・コンピューターによって提供することができる。アプリケーション・サーバー９０８は、種々のサービス、仮想機械、ポータル、および／または他のリソースをホストすることができる。図示する実施形態では、アプリケーション・サーバー９０８はアプリケーションまたは他の機能をホストするために、１つ以上の仮想機械９１４をホストする。種々の実施態様によれば、仮想機械９１４は、態様の中でもとりわけ、スプレッドシート文書内におけるある範囲のセルの選択に基づいて、高速分析ツールを利用を利用してスプレッドシート・アプリケーションのデーター分析特化機能を告知するために、本明細書において説明した機能を設ける１つ以上のアプリケーションおよび／またはソフトウェア・モジュールをホストする。尚、この実施形態は例示であり、決して限定するように解釈してはならないことは理解されてしかるべきである。また、アプリケーション・サーバー９０８は、１つ以上のウェブ・ポータル、リンク・ページ、ウェブ・サイト、および／または他の情報（「ウェブ・ポータル」）９１６もホストするか、またはこれらへのアクセスを付与する。
【００８５】
[0094]  種々の実施態様によれば、アプリケーション・サーバー９０８は、１つ以上のメールボックス・サービス９１８および１つ以上のメッセージング・サービス９２０も含む。メールボックス・サービス９１８は、電子メール（「イーメール」）サービスを含むことができる。また、メールボックス・サービス９１８は、種々の個人情報管理（「ＰＩＭ」）サービスも含むことができる。個人情報管理サービスは、カレンダー・サービス、連絡先管理サービス、コラボレーション・サービス、および／または他のサービスを含むが、これらに限定されるのではない。メッセージング・サービス９２０は、インスタント・メッセージング・サービス、チャット・サービス、フォーラム・サービス、および／または他の通信サービスを含むことができるが、これらに限定されるのではない。
【００８６】
[0095]  また、アプリケーション・サーバー９０８は、１つ以上のソーシャル・ネットワーキング・サービス９２２も含むことができる。ソーシャル・ネットワーキング・サービス９２２は、種々のソーシャル・ネットワーキング・サービスを含むことができ、ステータス更新、インスタント・メッセージ、リンク、写真、ビデオ、および／または他の情報を共有あるいはポストするサービス、商品(article)、製品、ブログ、または他のリソースにコメントを入れるまたはこれらに対する興味を表示するサービス、および／または他のサービスを含むが、これらに限定されるのではない。実施形態では、ソーシャル・ネットワーキング・サービス９２２が、FACEBOOKソーシャル・ネットワーキング・サービス、LINKEDINプロフェッショナル・ネットワーキング・サービス、MYSPACEソーシャル・ネットワーキング・サービス、FOURSQUARE地理的ネットワーキング・サービス、YAMMER同僚(office colleague)ネットワーキング・サービス等によって提供される、またはこれらを含む場合もある。他の実施形態では、ソーシャル・ネットワーキング・サービス９２２は、ソーシャル・ネットワーキング・プロバイダーとして明示的に知られていてもいなくてもよい他のサービス、サイト、および／またはプロバイダーによって提供される。例えば、あるウェブ・サイトが、公開された記事を読む、商品またはサービスについてのコメントを入れる、発表、コラボレーション、ゲーミング等というような、種々の行動および／またはコンテキストの間に、ユーザーが互いにイーメール、チャット・サービス、および／または他の手段によって交流することを可能にする。このようなサービスの例には、ワシントン州、RedmondにあるMicrosoft CorporationからのWINDOWS（登録商標） LIVEサービスおよびXBOX LIVEサービスが含まれるが、これらに限定されるのではない。他のサービスも可能であり、考えられる。
【００８７】
[0096]  また、ソーシャル・ネットワーキング・サービス９２２は、コメント作成、ブログ作成、および／またはマイクロ・ブログ作成サービスも含むことができる。このようなサービスの例には、YELPコメント作成サービス、KUDZUレビュー・サービス、OFFICETALK企業向けマイクロ・ブログ作成サービス、TWITTERメッセージング・サービス、GOOGLE BUZZサービス、および／または他のサービスが含まれるが、これらに限定されるのではない。尚、以上のサービスのリストは網羅的ではないこと、そして簡潔さのために、多数の追加のおよび／または代わりのソーシャル・ネットワーキング・サービス９２２が、本明細書では述べられないことは認められてしかるべきである。したがって、以上の実施形態は例示であり、決して限定するように解釈してはならない。
【００８８】
[0097]  図９に示すように、アプリケーション・サーバー９０８は、他のサービス、アプリケーション、ポータル、および／または他のリソース（「他のリソース」）９２４もホストすることができる。他のリソース９２４は、プレゼンテーション・アプリケーション・プログラムを含むことができるが、これに限定されるのではない。つまり、計算環境９０２は、本明細書において開示され、本明細書において種々のメールボックス、メッセージング、ソーシャル・ネットワーキング、および／または他のサービスまたはリソースが設けられる概念および技術の統合を示すことを認めることができよう。
【００８９】
[0098]  前述のように、計算環境９０２はデーター・ストレージ９１０を含むことができる。種々の実施態様によれば、データー・ストレージ９１０の機能は、ネットワーク９０４上で動作するまたはネットワーク１０４と通信する１つ以上のデーターベースによって設けられる。また、データー・ストレージ９１０の機能は、計算環境９０２のためにデーターをホストするように構成された１つ以上のサーバー・コンピューターによって設けることもできる。データー・ストレージ９１０は、１つ以上の実在するまたは仮想のデーターストア９２６A〜９２６N（以後纏めておよび／または全体的に「データーストア９２６」と呼ぶ）を含む、ホストする、または設けることができる。データーストア９２６は、アプリケーション・サーバー９０８によって用いられるまたは作成されたデーター、および／または他のデーターをホストするように構成される。図９には示されないが、データーストア９２６は、スプレッドシート文書、推奨エンジンによる実行のためのアルゴリズム、および／またはスプレッドシート・アプリケーション・プログラムによって利用される他のデーターをホストするまたは格納することもできる。
【００９０】
[0099]  計算環境９０２は、ネットワーク・インターフェース９１２と通信することができ、またはネットワーク・インターフェース９１２によってアクセスすることができる。ネットワーク・インターフェース９１２は、クライアント９０６およびアプリケーション・サーバー９０８を含むがこれらに限定されない２つ以上の計算デバイス間における通信をサポートするために、種々のタイプのネットワーク・ハードウェアおよびソフトウェアを含むことができる。尚、ネットワーク・インターフェース９１２が、他のタイプのネットワークおよび／またはコンピューター・システムに接続するために利用されてもよいことは、認められてしかるべきである。
【００９１】
[00100]  尚、本明細書において説明した分散型計算環境９００は、本明細書において説明したソフトウェア・エレメントのあらゆる態様に、本明細書において開示したソフトウェア・コンポーネントのあらゆる態様を実行するように構成することができる、あらゆる数の仮想計算リソースおよび／または他の分散型計算機能を設けることができることは理解されてしかるべきである。本明細書において開示した概念および技術の種々の実施態様によれば、分散型計算環境９００は、本明細書において説明したソフトウェア機能を、クライアント９０６に対するサービスとして提供する。尚、クライアント９０６は、実在する機械または仮想機械を含むことができ、これらの機械はサーバー・コンピューター、ウェブ・サーバー、パーソナル・コンピューター、移動体計算デバイス、スマート・フォン、および／または他のデバイスを含むがこれらに限定されるのではないことは理解されてしかるべきである。したがって、本明細書において開示した概念および技術の種々の実施形態は、分散型計算環境９００にアクセスするように構成されたあらゆるデバイスが、態様の中でもとりわけ、スプレッドシート文書内におけるある範囲のセルの選択に基づいて、高速分析ツールを利用してスプレッドシート・アプリケーションのデーター分析特化機能を告知するために、本明細書において説明した機能を利用することを可能にする。
【００９２】
[00101]  これより図１０に移り、計算デバイスの例示的な計算デバイス・アーキテクチャーは、態様の中でもとりわけ、スプレッドシート文書内におけるある範囲のセルの選択に基づいて、高速分析ツールを利用してスプレッドシート・アプリケーションのデーター分析特化機能を告知するために、本明細書において説明した種々のソフトウェア・コンポーネントを実行することができる。計算デバイス・アーキテクチャー１０００は、部分的に、形状係数、ワイヤレス接続性、および／またはバッテリー給電動作のために、移動体計算を容易にする計算デバイスに適用することができる。実施形態では、計算デバイスが、移動体電話機、タブレット・デバイス、スレート・デバイス、携帯用ビデオ・ゲーム・デバイス等を含む場合があるが、これらに限定されるのではない。計算デバイス・アーキテクチャー１０００は、図９に示したクライアント１３０６のいずれにでも適用することができる。更に、計算デバイス・アーキテクチャー１０００の態様は、従前からのデスクトップ・コンピューター、携帯用コンピューター（例えば、ラップトップ、ノートブック、超携帯用、およびネットワーク）、サーバー・コンピューター、および図８を参照して本明細書において説明したような他のコンピューター・システムにも適用可能であると考えられる。例えば、本明細書において以下で開示する単一タッチおよび多重タッチの態様は、タッチスクリーン、あるいはタッチ対応トラック・パッドまたはタッチ対応マウスというような、他の何らかのタッチ対応デバイスを利用するデスクトップ・コンピューターに適用することができる。
【００９３】
[00102]  図１０に示す計算デバイス・アーキテクチャー１０００は、プロセッサー１００２、メモリー・コンポーネント１００４、ネットワーク接続コンポーネント１００６、センサー・コンポーネント１００８、入力／出力コンポーネント１０１０、および電源コンポーネント１０１２を含む。図示する実施形態では、プロセッサー１００２は、メモリー・コンポーネント１００４、ネットワーク接続コンポーネント１００６、センサー・コンポーネント１００８、入力／出力（「Ｉ／Ｏ」）コンポーネント１０１０、および電源コンポーネント１０１２と通信する。図１０に示す個々のコンポーネント間には接続が示されないが、これらのコンポーネントは相互作用してデバイス機能を実行することができる。実施形態では、これらのコンポーネントが１つ以上のバス（図示せず）を通じて通信するように構成される場合もある。
【００９４】
[00103]  プロセッサー１００２は、本明細書において説明した種々の機能を実行するために、データーを処理し、１つ以上のアプリケーション・プログラムのコンピューター実行可能命令を実行し、計算デバイス・アーキテクチャー１０００の他のコンポーネントと通信するように構成された中央処理ユニット（「ＣＰＵ」）を含む。プロセッサー１００２は、本明細書において紹介したソフトウェア・コンポーネントの態様、特に、少なくとも部分的にタッチ対応入力を利用するものを実行するために利用することができる。
【００９５】
[00104]  実施形態では、プロセッサー１００２は、ＣＰＵによって実行される動作を加速するように構成されたグラフィクス処理ユニット（「ＧＰＵ」）を含む場合がある。これらの動作には、汎用科学および／または設計計算アプリケーション、および高解像度ビデオ（例えば、７２０Ｐ、１０８０Ｐ、または更に高解像度）、ビデオ・ゲーム、三次元（「３Ｄ」）モデリング・アプリケーション等というような、グラフィクス集約計算アプリケーションを実行することによって行われる動作が含まれるがこれらに限定されるのではない。実施形態では、プロセッサー１００２が、ディスクリートＧＰＵ（図示せず）と通信するように構成される場合もある。いずれの場合でも、ＣＰＵおよびＧＰＵは、共同処理(co-processing)ＣＰＵ／ＧＰＵ計算モデルにしたがって構成することができ、アプリケーションの順次実行部分がＣＰＵ上で実行し、計算集約的な部分がＧＰＵによって加速される。
【００９６】
[00105]  実施形態では、プロセッサー１００２が、本明細書において以下で説明する他のコンポーネントの１つ以上と共に、システム・オン・チップ（「ＳｏＣ」）である場合、またはシステム・オン・チップに含まれる場合もある。例えば、ＳｏＣは、プロセッサー１００２、ＧＰＵ、ネットワーク接続コンポーネント１００６の内１つ以上、およびセンサー・コンポーネント１００８の内１つ以上を含むことができる。実施形態では、プロセッサー１００２が、部分的に、パッケージ上パッケージ（「ＰｏＰ」）集積回路パッケージング技法を利用して製作される場合もある。プロセッサー１００２は、単一コア・プロセッサーであっても、マルチコア・プロセッサーであってもよい。
【００９７】
[00106]  プロセッサー１００２は、英国、CambridgeのARM HOLDINGSからライセンスが入手可能な、ARMアーキテクチャーにしたがって作成することができる。あるいは、プロセッサー１００２は、カリフォルニア州、Mountain ViewのINTEL CORPORATIONおよびその他から入手可能なような、x86アーキテクチャーにしたがって作成することもできる。実施形態では、プロセッサー１００２が、カリフォルニア州、San DiegoのQUALCOM社から入手可能なSNAPDRAGON SoC、カリフォルニア州、Santa ClaraのNVIDIAから入手可能な、Tegra SoC、大韓民国、ソウルのSAMSUNG社から入手可能なHUMMINGBIRD SoC、テキサス州、DallasのTEXAS INSTRUMENTS社から入手可能なOpen Multimedia Application Platform（「OMAP」）SoC、以上のＳｏＣのいずれかのカスタム化バージョン、または企業固有のＳｏＣである場合もある。
【００９８】
[00107]  メモリー・コンポーネント１００４は、ランダム・アクセス・メモリー（「ＲＡＭ」）１０１４、リード・オンリー・メモリー（「ＲＯＭ」）１０１６、統合記憶メモリー（「統合ストレージ」）１０１８、およびリムーバブル記憶メモリー（「リムーバブル・ストレージ」）１０２０を含む。実施形態では、ＲＡＭ１０１４またはその一部、ＲＯＭ１０１８またはその一部、および／またはＲＡＭ１０１４とＲＯＭ１０１８との何らかの組み合わせが、プロセッサー１００２に統合される場合もある。実施形態では、ＲＯＭ１０１８が、ファームウェア、オペレーティング・システムまたはその一部（例えば、オペレーティング・システム・カーネル）、および／または統合ストレージ１０１８および／またはリムーバブル・ストレージ１０２０からオペレーティング・システム・カーネルをロードするためのローダーを格納するように構成される場合もある。
【００９９】
[00108]  統合ストレージ１０１８は、ソリッド・ステート・メモリー、ハード・ディスク、またはソリッド・ステート・メモリーとハード・ディスクとの組み合わせを含むことができる。統合ストレージ１０１８は、プロセッサー１００２および本明細書において説明した他のコンポーネントも接続することができる、ロジック・ボードにはんだ付けするまたは他の方法で接続することができる。したがって、統合ストレージ１０１８は、計算デバイス内に統合される。統合ストレージ１０１８は、オペレーティング・システムまたはその一部、アプリケーション・プログラム、データー、および本明細書において説明した他のソフトウェア・コンポーネントを格納するように構成される。
【０１００】
[00109]  リムーバブル・ストレージ１０２０は、ソリッド・ステート・メモリー、ハード・ディスク、またはソリッド・ステート・メモリーとハード・ディスクとの組み合わせを含むことができる。実施形態では、リムーバブル・ストレージ１０２０が統合ストレージ１０１８の代わりに設けられる場合もある。他の実施形態では、リムーバブル・ストレージが追加の任意のストレージとして設けられる場合もある。実施形態では、リムーバブル・ストレージ１０２０が統合ストレージ１０１８と論理的に組み合わせられ、利用可能なストレージ全体が、１つの合体された記憶容量全体として利用可能となるようにする場合もある。実施形態では、統合ストレージ１０１８およびリムーバブル・ストレージ１０２０の合体された容量全体が、統合ストレージ１０１８およびリムーバブル・ストレージ１０２０の別個の記憶容量の代わりに、ユーザーに示される場合もある。
【０１０１】
[00110]  リムーバブル・ストレージ１０２０は、リムーバブル・ストレージ・メモリー・スロット（図示せず）または他のメカニズムに挿入されるように構成され、これによってリムーバブル・ストレージ１０２０がその中に挿入され、リムーバブル・ストレージ１０２０がプロセッサー１００２のような計算デバイスの他のコンポーネントと通信することを可能にする接続を容易にするために固定される。リムーバブル・ストレージ１０２０は、種々のメモリー・カード・フォーマットで具体化することができる。メモリー・カード・フォーマットには、ＰＣカード、CompactFlashカード、メモリー・スティック、セキュア・ディジタル（「ＳＤ」）、miniSD、microSD、ユニバーサル集積回路カード（「ＵＩＣＣ」）（例えば、加入者識別モジュール（「ＳＩＭ」）またはユニバーサルＳＩＭ（「ＵＳＩＭ」））、企業固有のフォーマット等を含むが、これらに限定されるのではない。
【０１０２】
[00111]  尚、メモリー・コンポーネント１００４の内１つ以上がオペレーティング・システムを格納できることは理解できよう。種々の実施形態によれば、オペレーティング・システムは、SYMBIAN LIMITEDからのSYMBIAN OS、ワシントン州、RedmondのMicrosoft CorporationからのWINDOWS（登録商標） MOBILE OS、Microsoft CorporationからのWINDOWS（登録商標） PHONE OS、Microsoft CorporationからのWINDOWS（登録商標）、カリフォルニア州、Palo AltoのHewlett-Packard CompanyからのPALM WEBOS、カナダ、オンタリオ州、WaterlooのResearch In Motion LimitedからのBLACKBERRY OS、カリフォルニア州、CupertinoのAPPLE Inc.からのＩＯＳ、カリフォルニア州、Mountain ViewのGoogle Inc.からのANDROID（登録商標）を含む。他のオペレーティング・システムも考えられる。
【０１０３】
[00112]  ネットワーク接続コンポーネント１００６は、ワイヤレス・ワイド・エリア・ネットワーク・コンポーネント（「ＷＷＡＮコンポーネント」）１０２２、ワイヤレス・ローカル・エリア・ネットワーク・コンポーネント（「ＷＬＡＮコンポーネント」）１０２４、およびワイヤレス・パーソナル・エリア・ネットワーク・コンポーネント（「ＰＷＡＮコンポーネント」）１０２６を含む。ワイヤレス接続コンポーネント１００６は、ネットワーク１０４または他のネットワークへの通信およびからの通信を容易にする。他のネットワークは、ＷＷＡＮ、ＷＬＡＮ、またはＷＰＡＮであってもよい。ネットワーク１０４のみが示されるが、ネットワーク接続コンポーネント１００６は、多数のネットワークとの同時通信も容易にすることができる。例えば、ネットワーク接続コンポーネント１００６は、ＷＷＡＮ、ＷＬＡＮ、またはＷＰＡＮの内１つ以上を通じた、多数のネットワークとの同時通信を容易にすることもできる。
【０１０４】
[00113]  ネットワーク１０４は、計算デバイス・アーキテクチャー１０００を利用しＷＷＡＮコンポーネント１０２２を通じて音声および／またはデーター・サービスを計算デバイスに提供するために１つ以上の移動体電気通信技術を利用する移動体電気通信ネットワークのような、ＷＷＡＮであってもよく、またはＷＷＡＮを含むのでもよい。移動体電気通信技術は、全地球移動体通信システム（「ＧＳＭ（登録商標）」）、符号分割多元接続（「ＤＣＭＡ」）ＯＮＥ、ＣＤＭＡ２０００、全世界移動体電気通信システム（「ＵＭＴＳ」）、ロング・ターム・エボリューション（「ＬＴＥ」）、および世界規模相互動作マイクロ波接続（「ＷｉＭＡＸ」：Worldwide Interoperability for Microwave Access）を含むことができるが、これらに限定されるのではない。更に、ネットワーク１０４は、種々のチャネル・アクセス方法（以上で述べた規格によって使用されてもされなくてもよい）を利用することもできる。チャネル・アクセス方法には、時分割多元接続（「ＴＤＭＡ」）、周波数分割多元接続（「ＦＤＭＡ」）、ＣＤＭＡ、広帯域ＣＤＭＡ（「Ｗ−ＣＤＭＡ」）、直交周波数分割多重化（「ＯＦＤＭ」）、空間分割多元接続（「ＳＤＭＡ」）等が含まれるが、これらに限定されるのではない。データー通信は、汎用パケット無線サービス（「ＧＰＲＳ」）、全地球発展用拡張データー・レート（「ＥＤＧＥ」）、高速ダウンリンク・パケット・アクセス（「ＨＳＤＰＡ」）、拡張アップリンク（「ＥＵＬ」）、または他の名称が付けられた高速アップリンク・パケット・アクセス（「ＨＳＵＰＡ」）を含む高速パケット・アクセス（「ＨＳＰＡ」）プロトコル群、発展ＨＰＳＡ（「ＨＳＰＡ＋」）、ＬＴＥ、ならびに種々のその他の現在または将来のワイヤレス・データー・アクセス規格を用いて、提供することができる。ネットワーク１０４は、以上の技術のいずれの組み合わせによっても、音声および／またはデーター通信を提供するように構成することができる。ネットワーク１０４は、将来世代の技術にしたがって、音声および／またはデーター通信を提供するように構成または適応化(adapt)することができる。
【０１０５】
[00114]  実施形態では、ＷＷＡＮコンポーネント１０２２が、二重モード接続、または多重モード接続をネットワーク１０４に提供するように構成される場合もある。例えば、ＷＷＬＡＮコンポーネント１０２２が、接続をネットワーク１０４に提供するように構成されてもよく、この場合、ネットワーク１０４はＧＳＭ（登録商標）およびＵＭＴＳ技術によって、または他の何らかの技術の組み合わせによって、サービスを提供する。あるいは、多数のＷＷＡＮコンポーネント１０２２を利用してこのような機能を実行すること、および／または他の互換性がない技術（即ち、１つのＷＷＡＮコンポーネントによってサポートすることができない）をサポートするために追加の機能を提供することもできる。ＷＷＡＮコンポーネント１０２２は、多数のネットワーク（例えば、ＵＭＴＳネットワークおよびＬＴＥネットワーク）に対する同様の接続を容易にすることもできる。
【０１０６】
[00115]  ネットワーク１０４は、ＩＥＥＥ８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ、８０２．１１ｎ、および／または今後の８０２．１１規格（ここでは纏めてＷＩ−ＦＩと呼ぶ）というような、米国電気および電子工学会（「ＩＥＥＥ」）８０２．１１規格にしたがって動作するＷＬＡＮであってもよい。802.11規格の草稿も想定に入る。実施形態では、１つ以上のワイヤレスＷＩ−ＦＩアクセス・ポイントを利用してＷＡＮが実現される場合もある。実施形態では、ワイヤレスＷＩ−ＦＩアクセス・ポイントの１つ以上が、ＷＩ−ＦＩホットスポットとして機能しているＷＷＡＮへの接続を有する他の計算デバイスである場合もある。ＷＬＡＮコンポーネント１０２４は、ＷＩ−ＦＩアクセス・ポイントを介してネットワーク１０４に接続するように構成される。このような接続は、ＷＩ−ＦＩ保護アクセス（「ＷＰＡ」）、ＷＰＡ２、有線同等プライバシー（「ＷＥＰ」）等を含むがこれらに限定されない、種々の暗号化技術によって、安全を確保することができる。
【０１０７】
[00116]  ネットワーク１０４は、赤外線データー連合（「ＩｒＤＡ」）、BLUETOOTH（登録商標）、ワイヤレス・ユニバーサル・シリアル・バス（「ＵＳＢ」）、Ｚ−Ｗａｖｅ、ＺＩＧＢＥＥ（登録商標）、または他の何らかの短距離ワイヤレス技術にしたがって動作するＷＰＡＮであってもよい。実施形態では、ＷＰＡＮコンポーネント１０２６が、ＷＰＡＮを通じた、周辺機器、コンピューター、または他の計算デバイスというような他のデバイスとの通信を容易にするように構成される場合もある。
【０１０８】
[00117]  センサー・コンポーネント１００８は、磁力計１０２８、周囲光センサー１０３０、近接センサー１０３２、加速度計１０３４、ジャイロスコープ１０３６、および汎地球測位システム・センサー（「ＧＰＳセンサー」）１０３８を含む。尚、限定ではなく、温度センサーまたは衝撃検出センサーというような他のセンサーも、計算デバイス・アーキテクチャー１０００に内蔵されてもよいことも考えられる。
【０１０９】
[00118]  磁力計１０２８は、磁場の強さおよび方向を測定するように構成される。実施形態では、磁力計１０２８が、基本方位、北、南、東、および西を含む基準フレームにおける正確な方向をユーザーに規定するために、メモリー・コンポーネント１００４の内の１つに格納されたコンパス・アプリケーション・プログラムに測定値を供給する場合もある。同様の測定値が、コンパス・コンポーネントを含むナビゲーション・アプリケーション・プログラムに供給されるのでもよい。磁力計１０２８によって得られた測定値には、他の用法も考えられる。
【０１１０】
[00119]  周囲光センサー１０３０は、周囲光を測定するように構成される。実施形態では、周囲光センサー１０３０が、自動的にディスプレイの明るさを調節して（以下で説明する）光が少ない環境および光が多い環境を補償するために、メモリー・コンポーネント１００４の内１つに格納されたアプリケーション・プログラムに測定値を供給する場合もある。周囲光センサー１０３０によって得られた測定値には、他の用法も考えられる。
【０１１１】
[00120]  近接センサー１０３２は、直接的な接触はなく、計算デバイスに近接した物体または物の存在を検出するように構成される。実施形態では、近接センサー１０３２がユーザーの身体（例えば、ユーザーの顔）の存在を検出し、この情報をメモリー・コンポーネント１００４の内１つに格納されたアプリケーション・プログラムに提供する場合もある。このアプリケーション・プログラムは、この近接情報を利用して、計算デバイスの何らかの機能をイネーブルまたはディスエーブルする。例えば、ユーザーの顔が不注意に通話を終了させたり、通話の最中に電話アプリケーション・プログラム内における他の機能をイネーブル／ディスエーブルすることがないように、電話アプリケーション・プログラムが、近接情報の受信に応答して、タッチスクリーン（以下で説明する）を自動的にディスエーブルすることもできる。近接センサー１０２８によって検出される近接には、他の用法も考えられる。
【０１１２】
[00121]  加速度計１０３４は、適正な加速度を測定するように構成される。実施形態では、加速度計１０３４からの出力が、アプリケーション・プログラムによって入力メカニズムとして用いられ、このアプリケーション・プログラムの何らかの機能を制御する場合もある。例えば、アプリケーション・プログラムがビデオ・ゲームであってもよく、この場合、キャラクター、その一部、または物体が、加速度計１０３４を介して受け取られた入力に応答して、動かされる、または言い換えると操作される。実施形態では、加速度計１０３４からの出力が、横向きモードと縦向きモードとの間で切り替えるとき、座標加速度を計算するとき、または落下を検出するときに用いるために、アプリケーション・プログラムに供給される場合もある。加速度計１０３４の他の用法も考えられる。
【０１１３】
[00122]  ジャイロスコープ１０３６は、方位を測定し維持するように構成される。実施形態では、ジャイロスコープ１０３６からの出力が、アプリケーション・プログラムによって入力メカニズムとして用いられ、このアプリケーション・プログラムの何らかの機能を制御する場合もある。例えば、ジャイロスコープ１０３６は、ビデオ・ゲーム・アプリケーションまたは他の何らかのアプリケーションの３Ｄ環境内における動きの正確な認識のために用いることができる。実施形態では、アプリケーション・プログラムがジャイロスコープ１０３６および加速度計１０３４からの出力を利用して、このアプリケーション・プログラムの何らかの機能の制御を強化する場合もある。ジャイロスコープ１０３６の他の用法も考えられる。
【０１１４】
[00123]  ＧＰＳセンサー１０３８は、位置を計算するときに用いるために、ＧＰＳ衛星からの信号を受信するように構成される。ＧＰＳセンサー１０３８によって計算される位置は、位置情報を必要とするまたは位置情報から利益が得られるあらゆるアプリケーション・プログラムによって使用されてもよい。例えば、ＧＰＳセンサー１０３８によって計算される位置が、ナビゲーション・アプリケーション・プログラムと共に用いられて、その位置から宛先までの方向、または宛先からその位置までの方向を示すことができる。更に、ＧＰＳセンサー１０３８は、位置情報を、Ｅ９１１サービスのような外部位置検出系サービスに提供するために用いられてもよい。ＧＰＳセンサー１０３８は、ＷＩ−ＦＩ、ＷＩＭＡＸ、および／またはネットワーク接続コンポーネント１００６の内１つ以上を利用するセルラ三角測量技法によって生成される位置情報を得て、位置修正(location fix)を得るときにＧＰＳセンサー１０３８を補助することができる。また、ＧＰＳセンサー１０３８は、補助ＧＰＳ（「Ａ−ＧＰＳ」）システムにおいても用いることができる。
【０１１５】
[00124]  Ｉ／Ｏコンポーネント１０１０は、ディスプレイ１０４０、タッチスクリーン１０４２、データーＩ／Ｏインターフェース・コンポーネント（「データーＩ／Ｏ」）１０４４、オーディオＩ／Ｏインターフェース・コンポーネント（「オーディオＩ／Ｏ」）１０４６、ビデオＩ／Ｏコンポーネント（「ビデオＩ／Ｏ」）１０４８、およびカメラ１０５０を含む。実施形態では、ディスプレイ１０４０およびタッチスクリーン１０４２が組み合わされる場合もある。実施形態では、データーＩ／Ｏコンポーネント１０４４、オーディオＩ／Ｏコンポーネント１０４６、およびビデオＩ／Ｏコンポーネント１０４８の内２つ以上が組み合わされる場合もある。Ｉ／Ｏコンポーネント１０１０は、以下で説明する種々のインターフェースをサポートするように構成されたディスクリート・プロセッサーを含むことができ、またはプロセッサー１００２に内蔵された処理機能を含むこともできる。
【０１１６】
[00125]  ディスプレイ１０４０は、視覚形態で情報を提示するように構成された出力デバイスである。具体的には、ディスプレイ１０４０は、グラフィカル・ユーザー・インターフェース（「ＧＵＩ」）エレメント、高速分析ツール・ユーザー・インターフェース、テキスト、画像、ビデオ、通知、仮想ボタン、仮想キーボード、メッセージング・データー、インターネット・コンテンツ、デバイス・ステータス、時間、日付け、カレンダー・データー、好み、地図情報、位置情報、および視覚形態で提示することができる他のあらゆる情報を提示することができる。実施形態では、ディスプレイ１０４０が、何らかのアクティブ・マトリクスまたはパッシブ・マトリクス技術、ならびに何らかのバックライト技術（使用される場合には）を利用する液晶ディスプレイ（「ＬＣＤ」）である場合もある。実施形態では、ディスプレイ１４０が有機発光ダイオード（「ＯＬＥＤ」）ディスプレイである場合もある。他のディスプレイ・タイプも考えられる。
【０１１７】
[00126]  タッチスクリーン１０４２は、タッチの存在および位置を検出するように構成された入力デバイスである。タッチスクリーン１０４２は、抵抗式タッチスクリーン、容量型タッチスクリーン、表面弾性波タッチスクリーン、赤外線タッチスクリーン、光学撮像タッチスクリーン、散乱信号タッチスクリーン、音響パルス認識タッチスクリーン、であってもよく、または他のいずれのタッチスクリーン技術を利用してもよい。実施形態では、タッチスクリーン１０４２がディスプレイ１０４０上に半透明層として組み込まれる場合もある、ユーザーが１つ以上のタッチを用いて、ディスプレイ１０４０上に提示されるオブジェクト(object)または他の情報と対話処理することを可能にする。他の実施形態では、タッチスクリーン１０４２が、ディスプレイ１０４０を含まない計算デバイスの表面上に組み込まれたタッチ・パッドである場合もある。例えば、計算デバイスが、ディスプレイ１０４０上に組み込まれたタッチスクリーンと、ディスプレイ１０４０に対向する表面上にタッチ・パッドとを有するのでもよい。
【０１１８】
[00127]  実施形態では、タッチスクリーン１０４２が単一タッチ・タッチスクリーンである場合もある。他の実施形態では、タッチスクリーン１０４２が多重タッチ・タッチスクリーンである場合もある。実施形態では、タッチスクリーン１０４２が、不連続タッチ、単一タッチのジェスチャー、および／または多数タッチのジェスチャーを検出するように構成される場合もある。本明細書では、便宜上これらを纏めてジェスチャーと呼ぶ。これより、様々なジェスチャーについて説明する。尚、これらのジェスチャーは例示であり、添付する請求項の範囲を限定することを意図していないことは言うまでもない。更に、説明するジェスチャー、追加のジェスチャー、および／または代わりのジェスチャーも、タッチスクリーン１０４２と共に使用するために、ソフトウェアで実現することができる。したがって、開発者は、個々のアプリケーション・プログラムに特定なジェスチャーを作成することができる。
【０１１９】
[00128]  実施形態では、タッチスクリーン１０４２がタップ・ジェスチャーをサポートする場合がある。この場合、ユーザーはタッチスクリーン１０４２を１回、ディスプレイ１０４０上に提示された項目の上でタップする。このタップ・ジェスチャーは、ユーザーがタップしたものであれば何でも開くまたは起動することを含むがこれに限定されない、種々の理由のために用いることができる。実施形態では、タッチスクリーン１０４２が、二重タッチ・ジェスチャーをサポートする場合もあり、ユーザーは、ディスプレイ１０４０上に提示された項目上で２回タッチスクリーン１０４２をタッチする。この二重タップ・ジェスチャーは、段階的に拡大または縮小することを含むがこれに限定されない種々の理由のために用いることができる。実施形態では、タッチスクリーン１０４２がタップおよびホールド・ジェスチャー(tap and hold gesture)をサポートする場合もあり、ユーザーはタッチスクリーン１０４２をタップして、少なくとも既定時間接触を維持する。このタップおよびホールド・ジェスチャーは、コンテキスト特定メニューを開くことを含むがこれには限定されない種々の理由のために用いることができる。
【０１２０】
[00129]  実施形態では、タッチスクリーン１０４２がパンニング・ジェスチャー(pan gesture)をサポートする場合もあり、ユーザーがタッチスクリーン１０４２上に指を置いて、タッチスクリーン１０４２上でこの指を動かしながら、タッチスクリーン１０４２との接触を維持する。このパンニング・ジェスチャーは、画面全体にわたって画像またはメニューを、制御された速度で、動かすことを含むがこれには限定されない種々の理由のために用いることができる。また、多数の指のパンニング・ジェスチャーも考えられる。実施形態では、タッチスクリーン１０４２がフリック・ジェスチャー(flick gesture)をサポートする場合もあり、ユーザーが画面を動かしたい方向にユーザーが指をスワイプする。このフリック・ジェスチャーは、メニュー全体またはページにまたがって水平または垂直にスクロールすることを含むがこれに限定されない種々の理由のために用いることができる。実施形態では、タッチスクリーン１０４２がピンチおよびストレッチ・ジェスチャー(pinch and stretch gesture)をサポートする場合もあり、ユーザーは、タッチスクリーン１０４２上において２本の指（例えば、親指と人差し指）で挟む動きを行うか、またはこれら２本の指を離れるように動かす。このピンチおよびストレッチ・ジェスチャーは、ウェブ・サイト、地図、または写真を徐々に拡大または縮小することを含むがこれには限定されない種々の理由のために用いることができる。
【０１２１】
[00130]  以上のジェスチャーは、１本以上の指を使用してジェスチャーを行うことを参照して説明したが、つま先のような他の四肢、またはスタイラスのような物体を用いて、タッチスクリーン１０４２と対話処理することもできる。したがって、以上のジェスチャーは例示として理解されてしかるべきであり、決して限定するように解釈してはならない。
【０１２２】
[00131]  データーＩ／Ｏインターフェース・コンポーネント１０４４は、データーの計算デバイスへの入力、およびデーターの計算デバイスからの出力をやり易くするように構成される。実施形態では、データーＩ／Ｏインターフェース・コンポーネント１０４４が、同期動作の目的で、計算デバイスとコンピューター・システムとの間に有線接続を設けるように構成されたコネクターを含む場合もある。このコネクターは、企業固有のコネクター、またはＵＳＢ、マイクロＵＳＢ、ミニＵＳＢ等のような標準コネクターであってもよい。実施形態では、コネクターが、ドッキング・ステーション、オーディオ・デバイス（例えば、ディジタル音楽プレーヤー）、またはビデオ・デバイスのような他のデバイスと計算デバイスをドッキングするためのドック・コネクターである場合もある。
【０１２３】
[00132]  オーディオＩ／Ｏコンポーネント１０４６は、オーディオ入力および／または出力能力を計算デバイスに設けるように構成される。実施形態では、オーディオＩ／Ｏコンポーネント１０４４が、オーディオ信号を収集するように構成されたマイクロフォンを含む場合もある。実施形態では、オーディオＩ／Ｏコンポーネント１０４４が、ヘッドフォンまたは他の外部スピーカーのための接続を設けるように構成されたヘッドフォン・ジャックを含む場合もある。実施形態では、オーディオＩ／Ｏコンポーネント１０４６が、オーディオ信号の出力のためにスピーカーを含む場合もある。実施形態では、オーディオＩ／Ｏコンポーネント１０４４が、光学オーディオ・ケーブル出力を含む場合もある。
【０１２４】
[00133]  ビデオＩ／Ｏインターフェース・コンポーネント１０４８は、ビデオ入力および／または出力能力を計算デバイスに設けるように構成される。実施形態では、ビデオＩ／Ｏインターフェース・コンポーネント１０４８が、他のデバイス（例えば、ＤＶＤまたはＢＬＵＲＡＹプレーヤーのようなビデオ・メディア・プレーヤー）からの入力としてビデオを受ける、または他のデバイス（例えば、モニター、テレビジョン、または他の何らかの外部ディスプレイ）への出力としてビデオを送るように構成されたビデオ・コネクターを含む場合もある。実施形態では、ビデオＩ／Ｏインターフェース・コンポーネント１０４８が、高品位マルチメディア・インターフェース（「ＨＤＭＩ（登録商標）」）、ミニＨＤＭＩ、マイクロＨＤＭＩ、DisplayPort、またはビデオ・コンテンツを入力／出力するための企業固有のコネクターを含む場合もある。実施形態では、ビデオＩ／Ｏインターフェース・コンポーネント１０４８またはその一部が、オーディオＩ／Ｏコンポーネント１０４６またはその一部と組み合わせられる場合もある。
【０１２５】
[00134]  カメラ１０５０は、静止画像および／またはビデオを取り込むように構成することができる。カメラ１０５０は、電荷結合デバイス（「ＣＣＤ」）または相補金属酸化物半導体（「ＣＭＯＳ」）撮像センサーを利用して画像を取り込むことができる。実施形態では、カメラ１０５０が、光が少ない環境において写真を撮影するのを補助するためにフラッシュを含む場合もある。カメラ１５０の設定は、ハードウェアまたはソフトウェア・ボタンとして実現することができる。
【０１２６】
[00135]  図示されないが、１つ以上のハードウェア・ボタンも計算デバイス・アーキテクチャー１０００に含まれてもよい。ハードウェア・ボタンは、計算デバイスの何らかの動作的態様を制御するために用いることができる。ハードウェア・ボタンは、専用ボタンであっても、兼用ボタンであってもよい。ハードウェア・ボタンは、機械式でもセンサー・ベースでもよい。
【０１２７】
[00136]  図示する電源コンポーネント１０１２は、１つ以上のバッテリー１０５２を含み、これらはバッテリー・ゲージ１０５４に接続することができる。バッテリー１０５２は、再充電可能でも使い捨てでもよい。再充電可能バッテリー・タイプは、リチウム・ポリマー、リチウム・イオン、ニッケル・カドミウム、およびニッケル金属混成体を含むが、これらに限定されるのではない。バッテリー１０５２の各々は、１つまたは複数のセルで作られてもよい。
【０１２８】
[00137]  バッテリー・ゲージ１０５４は、電流、電圧、および温度というようなバッテリー・パラメータを測定するように構成することができる。実施形態では、バッテリー・ゲージ１０５４が、バッテリーの放電率、温度、使用年数、およびその他の因子の効果を測定して、残りの寿命をある誤差率以内で予測するように構成される場合もある。実施形態では、バッテリー・ゲージ１０５４が、有用な電力管理データーをユーザーに提示するために測定値を利用するように構成されたアプリケーション・プログラムに、測定値を供給する場合もある。電力管理データーは、使用バッテリー率、残存バッテリー率、バッテリー状態、残り時間、残り容量（例えば、ワット時間単位で）、電流引き出し量(current draw)、および電圧の内１つ以上を含むことができる。
【０１２９】
[00138]  電源コンポーネント１０１２は、電源コネクターも含むことができ、この電源コネクターは、前述したＩ／Ｏコンポーネント１０１０の内１つ以上と組みあわせることもできる。電源コンポーネント１０１２は、外部電源システムまたは充電機器と、電源Ｉ／Ｏコンポーネント１０４２を介してインターフェースすることもできる。
【０１３０】
[00139]  以上の説明に基づいて、本明細書では、スプレッドシート文書の選択された部分におけるデーターに合わせて個別に作成される１つ以上のデーター分析特化機能を提示するように構成された高速分析ツールについての概念および技術が開示されたことは認められてしかるべきである。本明細書において提示した主題について、コンピューターの構造的特徴、方法論的アクトまたは変形力があるアクト(transformative act)、具体的な計算機械、およびコンピューター読み取り可能媒体に特定的な文言で説明したが、添付した特許請求の範囲において定められる本発明は、必ずしも本明細書において説明したこれらの具体的な特徴にも、アクトにも、媒体にも限定されないことは、理解されてしかるべきである。逆に、これらの具体的な特徴、アクト、および媒体は、特許請求の範囲を実現する形態例として開示されたまでである。
【０１３１】
[00140]  以上で説明した主題は、例示として提示されたに過ぎず、限定と解釈してはならない。図示および説明した実施形態例やアプリケーションに従うことなく、そして以下の特許請求の範囲において記載される、本発明の真の主旨および範囲から逸脱することなく、種々の修正および変更(modifications and changes)を本主題に対して行うことができる。
【図１】
2015507779.tif 000003
【図２Ａ】
2015507779.tif 000004
【図２Ｂ】
2015507779.tif 000005
【図３】
2015507779.tif 000006
【図４】
2015507779.tif 000007
【図５Ａ】
2015507779.tif 000008
【図５Ｂ】
2015507779.tif 000009
【図５Ｃ】
2015507779.tif 000010
【図５Ｄ】
2015507779.tif 000011
【図５Ｅ】
2015507779.tif 000012
【図５Ｆ】
2015507779.tif 000013
【図６】
2015507779.tif 000014
【図７】
2015507779.tif 000015
【図８】
2015507779.tif 000016
【図９】
2015507779.tif 000017
【図１０】
2015507779.tif 000018
【国際調査報告】
2015507779.tif 000019
2015507779.tif 000020