專利名稱:用于執(zhí)行計(jì)算處理的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于執(zhí)行諸如電子表格之類計(jì)算處理的系統(tǒng)和方法。具體而言,本發(fā)明涉及基于表格中包含的單元的值執(zhí)行計(jì)算的系統(tǒng)和方法。
背景技術(shù):
在用于執(zhí)行電子表格(spreadsheet)處理的系統(tǒng)中,用戶通過(guò)在稱為單元(cell)的元素中輸入值來(lái)準(zhǔn)備電子表格。此外,用戶還能夠在單元中記錄通過(guò)引用另一單元中的值獲得的公式,并能夠在記錄公式的單元中顯示出公式的計(jì)算結(jié)果。當(dāng)預(yù)先準(zhǔn)備了數(shù)學(xué)函數(shù)并將其包含在公式中時(shí),用戶還能夠很容易地執(zhí)行比較而言較高級(jí)的計(jì)算。然而,可包含在數(shù)學(xué)函數(shù)中的函數(shù)是預(yù)先確定好的,如果用戶想要執(zhí)行其他不同的計(jì)算,則必須準(zhǔn)備不同的程序。作為用于執(zhí)行電子表格處理的系統(tǒng)示例,Excel(注冊(cè)商標(biāo))已為人們所使用(參見(jiàn)非專利文獻(xiàn)1)。
微軟公司,Excel 2003產(chǎn)品信息,主頁(yè)URL“http://www.microsoft.com/japan/office/excel/prodinfo/default.mspx”發(fā)明內(nèi)容本發(fā)明要解決的問(wèn)題然而,與準(zhǔn)備公式描述相比,創(chuàng)建程序則是較困難的工作。由于即便是專家也有時(shí)會(huì)發(fā)現(xiàn)難以改正在未按預(yù)期執(zhí)行的程序中的錯(cuò)誤,因此,普通用戶不能容易地創(chuàng)建程序。作為所涉及困難的示例,如果使用Excel(注冊(cè)商標(biāo))的用戶想要執(zhí)行函數(shù)不能應(yīng)付的處理,則用戶必須使用諸如Visual Basic(注冊(cè)商標(biāo))之類的編程語(yǔ)言預(yù)先創(chuàng)建程序。
另一方面,近年來(lái)的電子表格系統(tǒng)一般提供有用于從Web服務(wù)器直接獲得大量信息的功能。這樣的電子表格系統(tǒng)例如可從Web服務(wù)器獲取眾多股票的價(jià)格,并將它們直接記錄在電子表格的單元中。為此,對(duì)大量信息,可有效和高效地使用迭代處理。然而,對(duì)于傳統(tǒng)電子表格系統(tǒng)提供的電子表格處理的公式并不總是能很好地執(zhí)行迭代處理,在許多情形中,還需要?jiǎng)?chuàng)建程序。
因此,本發(fā)明的目的在于提供一種能夠解決上述問(wèn)題的系統(tǒng)、方法和程序產(chǎn)品。該目的可通過(guò)將本申請(qǐng)的獨(dú)立權(quán)利要求中記載的特征的組合來(lái)實(shí)現(xiàn)。從屬權(quán)利要求定義了本發(fā)明的其他具體優(yōu)選示例。
用于解決該問(wèn)題的手段為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種通過(guò)設(shè)置計(jì)算表格中每個(gè)單元的值的計(jì)算公式來(lái)針對(duì)該單元執(zhí)行計(jì)算處理的系統(tǒng),包括輸入數(shù)據(jù)選擇單元,用于響應(yīng)于將其中記錄有多個(gè)輸入數(shù)據(jù)的表格中的一個(gè)或多個(gè)單元與第一單元相關(guān)聯(lián),順序選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值;計(jì)算單元,用于響應(yīng)于選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值,執(zhí)行在除第一單元之外的單元中設(shè)置的計(jì)算公式,并引用第一單元;以及數(shù)據(jù)輸出單元,用于將計(jì)算單元針對(duì)各個(gè)輸入數(shù)據(jù)獲得的計(jì)算公式的計(jì)算結(jié)果作為一個(gè)或多個(gè)第二單元的值輸出。此外,本發(fā)明還提供了一種用于使用該系統(tǒng)執(zhí)行計(jì)算處理的方法,和一種使信息處理裝置起到該系統(tǒng)作用的程序產(chǎn)品。
關(guān)于本發(fā)明的概括性描述并未列舉出本發(fā)明所要求的所有特征,這些特征的子組合也能構(gòu)成發(fā)明。
本發(fā)明的優(yōu)點(diǎn)根據(jù)本發(fā)明,在不必創(chuàng)建程序的條件下,就能夠很容易地執(zhí)行對(duì)于多個(gè)數(shù)據(jù)的迭代處理。
圖1顯示出電子表格系統(tǒng)10的一般設(shè)置;圖2顯示出包含在數(shù)據(jù)庫(kù)20中作為第一表格的示例的外部電子表格22;圖3顯示出包含在數(shù)據(jù)庫(kù)20中作為第二表格的示例的內(nèi)部電子表格24;圖4顯示出包含在數(shù)據(jù)庫(kù)20中的關(guān)聯(lián)信息26的示例;圖5顯示出電子表格裝置30的功能設(shè)置;圖6顯示出由顯示單元360顯示的外部電子表格22的示例;圖7顯示出由顯示單元360顯示的內(nèi)部電子表格24的示例;圖8的流程圖顯示出基于在電子表格中記錄的數(shù)據(jù)進(jìn)行的計(jì)算處理;圖9的流程圖顯示出步驟S810和S840的細(xì)節(jié);圖10的流程圖顯示出步驟S860的細(xì)節(jié);圖11顯示出電子表格的另一示例;圖12顯示出基于圖11所示電子表格的處理的概念視圖;圖13顯示出對(duì)于ADIEU系統(tǒng)的傳統(tǒng)示例;圖14顯示出對(duì)于ADIEU系統(tǒng)應(yīng)用該實(shí)施例的電子表格裝置30;以及圖15顯示出作為電子表格系統(tǒng)10的信息處理裝置500的硬件配置示例。
附圖標(biāo)記描述10電子表格系統(tǒng)20數(shù)據(jù)庫(kù)22外部電子表格24內(nèi)部電子表格26關(guān)聯(lián)信息30電子表格裝置200外部輸入單元
210外部輸出單元220內(nèi)部輸入單元230內(nèi)部輸出單元300獲取單元310存儲(chǔ)單元320確定單元330輸入數(shù)據(jù)選擇單元340計(jì)算單元350數(shù)據(jù)輸出單元360顯示單元370輸入單元380訪問(wèn)控制單元500信息處理裝置1200電子表格1210電子表格1220電子表格具體實(shí)施方式
圖1顯示出電子表格系統(tǒng)10的一般設(shè)置。電子表格系統(tǒng)10包括數(shù)據(jù)庫(kù)20和電子表格裝置30。在數(shù)據(jù)庫(kù)20中記錄有用于進(jìn)行電子表格處理的多個(gè)電子表格。每個(gè)電子表格包含多個(gè)數(shù)據(jù)字段,稱為單元。在每個(gè)單元中記錄有數(shù)據(jù)或設(shè)置有計(jì)算公式。在某一單元中記錄的計(jì)算公式可引用存儲(chǔ)在另一單元中的數(shù)據(jù)作為輸入?yún)?shù)。電子表格裝置30基于輸入?yún)?shù),執(zhí)行設(shè)置在每個(gè)單元中的計(jì)算公式的計(jì)算,并在該單元中顯示出計(jì)算結(jié)果。此外,電子表格裝置30可接受用于改變每個(gè)單元中所記錄的數(shù)據(jù)的輸入。響應(yīng)于對(duì)引用作為輸入?yún)?shù)的數(shù)據(jù)進(jìn)行更新,電子表格裝置30執(zhí)行引用相關(guān)數(shù)據(jù)的計(jì)算公式的計(jì)算。作為結(jié)果,并且依據(jù)數(shù)據(jù)的更新,也會(huì)立即更新使用引用相關(guān)數(shù)據(jù)的計(jì)算公式獲得的結(jié)果,并將其顯示在顯示屏上。
該實(shí)施例中的電子表格裝置30的目的在于,允許電子表格裝置30在不必創(chuàng)建單獨(dú)程序的條件下,容易地實(shí)現(xiàn)相比較而言較為高級(jí)的計(jì)算,例如,迭代處理。下面,將以計(jì)算關(guān)于所持有的多個(gè)帶名稱的(named)股票的盈利和虧損作為示例,詳細(xì)描述電子表格裝置30的配置。
圖2顯示出包含在數(shù)據(jù)庫(kù)20中作為第一電子表格示例的外部電子表格22。外部電子表格22使用標(biāo)識(shí)S1,并且表示在迭代處理外部執(zhí)行的外部處理。外部處理表示在迭代處理開(kāi)始前和迭代處理結(jié)束后執(zhí)行的處理。具體而言,外部電子表格22包含有用于記錄多個(gè)輸入數(shù)據(jù)組的外部輸入單元200。在圖2所示示例中的外部電子表格22包含在坐標(biāo)C2至C4處的外部輸入單元200。處于坐標(biāo)C2處的外部輸入單元200存儲(chǔ)有多個(gè)持有股票的名稱作為多個(gè)輸入數(shù)據(jù)。
“記錄多個(gè)輸入數(shù)據(jù)”不僅包括直接記錄輸入數(shù)據(jù)的情形,還包括記錄用于獲取輸入數(shù)據(jù)的公式的情形。在圖2所示示例中,在外部輸入單元200中記錄有用于從外部文件獲取多個(gè)股票的名稱的公式。在該計(jì)算公式中,Query(file name,entry name)表示用于從文件“file name”獲取對(duì)應(yīng)于“entry name”項(xiàng)的多個(gè)數(shù)據(jù)的公式。作為計(jì)算公式的計(jì)算結(jié)果,從外部文件獲取多個(gè)股票的名稱,并將其記錄在坐標(biāo)C2處的單元(之后稱為單元C2)中。
在坐標(biāo)C3處的外部輸入單元200具有持有股票的各自數(shù)量,在此將其作為輸入數(shù)據(jù)記錄。此外,在坐標(biāo)C4處的外部輸入單元200具有持有股票的購(gòu)買價(jià)格,將其作為多個(gè)輸入數(shù)據(jù)記錄。與股票名稱相似,可作為包含有Query函數(shù)的計(jì)算公式的計(jì)算結(jié)果,來(lái)獲得這些輸入數(shù)據(jù)。
外部電子表格22在單元A6中包含指示股票名稱的表項(xiàng),而且在單元A7至A9中還包含各自股票名稱。此外,外部電子表格22在單元B6包含指示股票盈利和虧損的表項(xiàng)。外部電子表格22還包含外部輸入單元210(對(duì)應(yīng)于單元B7至B9),用于記錄在內(nèi)部電子表格24中設(shè)置的計(jì)算公式的計(jì)算結(jié)果,關(guān)于內(nèi)部電子表格24將在以后描述。外部輸出單元210僅僅作為關(guān)于本發(fā)明的第二單元的示例,其可由多個(gè)單元組成,如圖2所示示例,或者可僅為單個(gè)單元。外部電子表格22在單元B11中記錄有用于計(jì)算股票總和的公式。
圖3顯示出包含在數(shù)據(jù)庫(kù)20中作為第二電子表格示例的內(nèi)部電子表格24。內(nèi)部電子表格24使用標(biāo)識(shí)S2,并且指示在迭代處理內(nèi)部執(zhí)行的內(nèi)部處理。內(nèi)部處理表示從迭代處理開(kāi)始到其結(jié)束期間執(zhí)行的處理。具體而言,內(nèi)部電子表格24包含多個(gè)內(nèi)部輸入單元220(對(duì)應(yīng)于單元C3至C5),其作為關(guān)于本發(fā)明的第一單元的示例。提供單元C3用于記錄在所持有的多個(gè)股票中某一股票的名稱。提供單元C4用于記錄所持有的相關(guān)股票的數(shù)量。提供單元C5用于記錄股票的購(gòu)買價(jià)格。
在單元C6中設(shè)置有用于獲取股票當(dāng)前價(jià)格的計(jì)算公式。當(dāng)使用該計(jì)算公式進(jìn)行計(jì)算時(shí),從外部獲取在單元C3中記錄的股票的當(dāng)前價(jià)格,并將其顯示出。在單元C7中設(shè)置有用于計(jì)算股票的盈利和虧損的計(jì)算公式。該計(jì)算公式通過(guò)將單元C6中記錄的當(dāng)前價(jià)格減去單元C5中記錄的購(gòu)買價(jià)格,并將減法結(jié)果與在單元C4中記錄的股票數(shù)量相乘來(lái)執(zhí)行計(jì)算。此外,內(nèi)部電子表格24在單元B2中可記錄有預(yù)定的函數(shù)。該函數(shù)可變地顯示出單元C3中所顯示的輸入數(shù)據(jù)的標(biāo)識(shí),該標(biāo)識(shí)指示在如圖2所示外部輸入單元200中記錄的輸入數(shù)據(jù)內(nèi)的排列順序。下面將該標(biāo)識(shí)稱作輸入數(shù)據(jù)的索引(index)。
圖4表示數(shù)據(jù)庫(kù)20中包含的關(guān)聯(lián)信息的示例。除了外部電子表格22和內(nèi)部電子表格24之外,在數(shù)據(jù)庫(kù)20中還記錄有關(guān)聯(lián)信息26。關(guān)聯(lián)信息26將外部電子表格22中的單元與內(nèi)部電子表格24中的單元關(guān)聯(lián)起來(lái),并且包括關(guān)聯(lián)類型。例如,關(guān)聯(lián)信息26將外部電子表格22的單元C2與內(nèi)部電子表格24的單元C3相關(guān)聯(lián),關(guān)聯(lián)類型為“input(輸入)”,并且將這些表項(xiàng)記錄在其中。這意味著,當(dāng)在作為外部輸入單元200的單元C2中記錄多個(gè)輸入數(shù)據(jù)時(shí),通過(guò)輸入數(shù)據(jù)選擇單元200(其將在以后進(jìn)行描述)將各個(gè)輸入數(shù)據(jù)順序選擇作為單元C3中的值。從而,通過(guò)分別采用在外部電子表格22中記錄的各個(gè)輸入數(shù)據(jù)作為輸入?yún)?shù),重復(fù)計(jì)算設(shè)置在內(nèi)部電子表格24中的計(jì)算公式。
此外,通過(guò)將外部電子表格22的單元C3和內(nèi)部電子表格24的單元C4彼此相關(guān)聯(lián),將這些單元記錄在關(guān)聯(lián)信息26中。這意味著,當(dāng)在作為外部輸入單元200的單元C3中記錄多個(gè)輸入數(shù)據(jù)時(shí),通過(guò)輸入數(shù)據(jù)選擇單元330(將在以后對(duì)其進(jìn)行描述)將各個(gè)輸入數(shù)據(jù)順序選擇作為單元C4中的值。此外,通過(guò)將外部電子表格22的單元C4和內(nèi)部電子表格24的單元C5彼此相關(guān)聯(lián),將這些單元記錄在關(guān)聯(lián)信息26中。這意味著,當(dāng)在作為外部輸入單元200的單元C4中記錄多個(gè)輸入數(shù)據(jù)時(shí),通過(guò)輸入數(shù)據(jù)選擇單元330將各個(gè)輸入數(shù)據(jù)順序選擇作為單元C5中的值。而且,通過(guò)將外部電子表格22的單元B7至B9和內(nèi)部電子表格25的單元C7彼此相關(guān)聯(lián),將這些單元記錄在關(guān)聯(lián)信息26中,并且關(guān)聯(lián)類型為“output(輸出)”。這意味著,當(dāng)將計(jì)算結(jié)果記錄在作為內(nèi)部輸出單元230的單元C7中時(shí),將計(jì)算結(jié)果輸出到單元B7至B9。
圖5顯示出電子表格裝置30的功能設(shè)置。電子表格裝置30包括獲取單元300、存儲(chǔ)單元310、確定單元320、輸入數(shù)據(jù)選擇單元330、計(jì)算單元340、數(shù)據(jù)輸出單元350、顯示單元360、輸入單元370和訪問(wèn)控制單元380,它們通常通過(guò)CPU 1000來(lái)實(shí)現(xiàn),并通過(guò)程序進(jìn)行控制,關(guān)于CPU 1000將在以后進(jìn)行描述。此外,可采用非易失性存儲(chǔ)器,例如,RAM,用作存儲(chǔ)單元310。
獲取單元300從數(shù)據(jù)庫(kù)20獲取外部電子表格22、內(nèi)部電子表格24和關(guān)聯(lián)信息26,并將它們存儲(chǔ)在存儲(chǔ)單元310中。存儲(chǔ)單元310向各部分提供存儲(chǔ)數(shù)據(jù),諸如,電子表格。此外,存儲(chǔ)單元310在訪問(wèn)控制單元380的控制下改變存儲(chǔ)電子表格。確定單元320確定在存儲(chǔ)單元310中存儲(chǔ)的電子表格是否改變。例如,確定單元320確定在外部輸入單元中記錄的多個(gè)輸入數(shù)據(jù)是否改變,或者在內(nèi)部輸出單元中設(shè)置的計(jì)算公式是否改變。
輸入數(shù)據(jù)選擇單元330基于關(guān)聯(lián)信息26,確定其中記錄有多個(gè)輸入數(shù)據(jù)的外部電子表格22的任何外部輸入單元200是否與內(nèi)部電子表格24的內(nèi)部輸入單元220相關(guān)聯(lián)。響應(yīng)于建立的關(guān)聯(lián),輸入數(shù)據(jù)選擇單元330順序選擇各個(gè)輸入數(shù)據(jù)作為內(nèi)部輸入單元220的值。響應(yīng)于將輸入數(shù)據(jù)選擇作為內(nèi)部輸入單元220的值,計(jì)算單元340對(duì)設(shè)置在內(nèi)部輸出單元230中的計(jì)算公式進(jìn)行計(jì)算,并且引用內(nèi)部輸入單元220,其中,內(nèi)部輸出單元230是內(nèi)部電子表格24中除內(nèi)部輸入單元220之外的單元。數(shù)據(jù)輸出單元350將計(jì)算單元340針對(duì)各個(gè)輸入數(shù)據(jù)執(zhí)行計(jì)算公式的計(jì)算結(jié)果輸出,以作為在外部電子表格22的外部輸出單元210中的值。也就是,當(dāng)要顯示整個(gè)外部電子表格22時(shí),顯示單元360將計(jì)算結(jié)果作為外部輸出單元210中的值顯示給用戶。
輸入單元370從用戶接受用于改變?cè)诿總€(gè)單元中記錄的值或設(shè)置的公式的輸入。一旦輸入單元370接受了用于改變值的輸入,訪問(wèn)控制單元380根據(jù)預(yù)定規(guī)則,確定是否允許值改變。例如,在外部輸入單元200與內(nèi)部輸入單元220相關(guān)聯(lián)的條件下,訪問(wèn)控制單元將不會(huì)允許用戶改變?cè)趦?nèi)部輸入單元220和外部輸出單元210中的值。從而,能夠防止在從外部電子表格22向內(nèi)部電子表格24傳輸?shù)妮斎霐?shù)據(jù)的值與用戶的輸入之間出現(xiàn)不一致。如果允許值改變,則訪問(wèn)控制單元380根據(jù)用戶的輸入改變存儲(chǔ)在存儲(chǔ)單元310中的電子表格。
輸入單元370還可接受用于改變內(nèi)部電子表格24中已輸入的單元B1中的標(biāo)識(shí)。響應(yīng)于標(biāo)識(shí)發(fā)生改變,顯示單元360將內(nèi)部輸入單元220中顯示的輸入數(shù)據(jù)改變?yōu)榭捎蓸?biāo)識(shí)來(lái)標(biāo)識(shí)的輸入數(shù)據(jù)。從而,對(duì)于多次重復(fù)進(jìn)行的計(jì)算中的任意一次計(jì)算,用戶能夠引用計(jì)算結(jié)果和計(jì)算程序。
圖6顯示出由顯示單元360顯示的外部電子表格22的示例。顯示單元360在單元C2中顯示出持有股票的多個(gè)股票名稱,單元C2作為外部輸入單元200。多個(gè)股票名稱為多個(gè)輸入數(shù)據(jù)。顯示單元360還在單元C3中顯示出股票持有數(shù)量,單元C3作為外部輸入單元200。關(guān)于股票數(shù)量的這些數(shù)據(jù)也作為多個(gè)輸入數(shù)據(jù)。此外,顯示單元360在單元C4中顯示出持有股票的購(gòu)買價(jià)格,單元C4作為外部輸入單元200。這些價(jià)格數(shù)據(jù)也構(gòu)成多個(gè)輸入數(shù)據(jù)。
此外,顯示單元360在單元B7至B9中顯示出各持有股票的盈利和虧損,單元B7至B9作為外部輸出單元210。通過(guò)設(shè)置在內(nèi)部電子表格24的單元C7中的計(jì)算公式計(jì)算出關(guān)于盈利和虧損的數(shù)據(jù)。此外,顯示單元360顯示出使用設(shè)置在單元B11中的計(jì)算公式所獲得的計(jì)算結(jié)果,即,在單元B7至B9中顯示的盈利和虧損的總和。當(dāng)獲得四個(gè)或更多個(gè)計(jì)算結(jié)果時(shí),在單元B7至B9中不能顯示出所有的結(jié)果,在此情形中,計(jì)算單元340可增加用于顯示計(jì)算結(jié)果的第二單元的數(shù)量。也就是,根據(jù)需要,計(jì)算單元340可在單元B8和B9之間插入附加行。從而,顯示單元360能夠顯示出所有計(jì)算結(jié)果。
圖7顯示出由顯示單元360顯示的內(nèi)部電子表格24的示例。顯示單元360在單元C3中顯示出多個(gè)持有股票的股票名稱中的任何一個(gè),單元C3作為內(nèi)部輸出單元230。顯示單元360還在單元B1中顯示出輸入數(shù)據(jù)的索引。如圖7所示示例中顯示的索引為2。基于此,可以確定,在內(nèi)部電子表格24的單元C3中顯示的輸入數(shù)據(jù)被設(shè)置于外部電子表格22的單元C2中記錄的多個(gè)輸入數(shù)據(jù)中的第二位置處。同樣可以確定,在內(nèi)部電子表格24的單元C4中顯示的輸入數(shù)據(jù)被設(shè)置于外部電子表格22的單元C3中記錄的多個(gè)輸入數(shù)據(jù)中的第二位置處。此外,還可確定,在內(nèi)部電子表格24的單元C5中顯示的輸入數(shù)據(jù)被設(shè)置于外部電子表格22的單元C4中記錄的多個(gè)輸入數(shù)據(jù)組中的第二位置處。
此外,顯示單元360顯示出使用計(jì)算公式所獲得的計(jì)算結(jié)果,而不是設(shè)置在單元C6中的計(jì)算公式。由于用于獲得股票當(dāng)前價(jià)格的計(jì)算公式(其被選擇作為單元C3的值)被設(shè)置在單元C6中,顯示單元在單元C6中顯示出當(dāng)前價(jià)格。此外,顯示單元360顯示出使用在此處設(shè)置的計(jì)算公式獲得的計(jì)算結(jié)果,而不是設(shè)置在單元C7中的計(jì)算公式。由于用于計(jì)算被選擇作為單元C3的值的股票盈利或虧損的公式被設(shè)置在單元C7中,顯示單元360在該單元C7中顯示出對(duì)于盈利或虧損執(zhí)行計(jì)算的結(jié)果。
此外,顯示單元360顯示出與一符號(hào)相關(guān)聯(lián)的內(nèi)部電子表格24,,該符號(hào)指示對(duì)多個(gè)輸入數(shù)據(jù)應(yīng)用在內(nèi)部電子表格24中設(shè)置的計(jì)算公式。在圖7的左下角,顯示出能夠使用鼠標(biāo)進(jìn)行選擇的標(biāo)簽,例如,選擇外部電子表格22或內(nèi)部電子表格24。顯示單元360還可使用表示例如重疊標(biāo)簽的符號(hào),以及單獨(dú)顯示出選擇內(nèi)部電子表格24的標(biāo)簽。通過(guò)這樣的顯示,用戶能夠很快理解用于傳輸輸入數(shù)據(jù)的方法或用于計(jì)算公式的使用編號(hào)。
圖8顯示出基于在電子表格中記錄的數(shù)據(jù)進(jìn)行的計(jì)算處理。獲取單元300從數(shù)據(jù)庫(kù)20獲得外部電子表格22、內(nèi)部電子表格24和關(guān)聯(lián)信息26,并將它們存儲(chǔ)在存儲(chǔ)單元310中(S800)。與電子表格的獲取相一致,輸入數(shù)據(jù)選擇單元330、計(jì)算單元340和數(shù)據(jù)輸出單元350基于在各自單元中指定的計(jì)算公式進(jìn)行計(jì)算,并且顯示單元360顯示出獲得的結(jié)果,并將其存儲(chǔ)在外部電子表格22和內(nèi)部電子表格24中(S810)。
輸入單元370接受來(lái)自用戶的用于改變單元中所記錄的數(shù)據(jù)或單元中所設(shè)置的計(jì)算公式的輸入,或用于改變關(guān)于輸入數(shù)據(jù)的索引的輸入(S820)。當(dāng)根據(jù)用戶輸入改變輸入數(shù)據(jù)或計(jì)算公式時(shí)(在S830處為“是”),計(jì)算單元340采用更新的輸入數(shù)據(jù),利用直接或間接引用更新輸入數(shù)據(jù)的計(jì)算公式執(zhí)行計(jì)算,在顯示器上更新計(jì)算結(jié)果(S840)。當(dāng)改變計(jì)算公式時(shí),計(jì)算單元340再次使用計(jì)算公式執(zhí)行計(jì)算,并使用該結(jié)果更新顯示。
響應(yīng)于接受用于改變輸入數(shù)據(jù)的索引的用戶輸入(在S850處為“是”),顯示單元360將在內(nèi)部輸入單元220中要顯示的輸入數(shù)據(jù)換成由更新的標(biāo)識(shí)所標(biāo)識(shí)的輸入數(shù)據(jù)(S860)。
圖9顯示出步驟S810和S840的細(xì)節(jié)。電子表格裝置30在S810針對(duì)所有輸入數(shù)據(jù)執(zhí)行以下處理,以及在S860針對(duì)直接或間接引用更新輸入數(shù)據(jù)的輸入數(shù)據(jù)執(zhí)行以下處理。
輸入數(shù)據(jù)選擇單元330生成結(jié)構(gòu)與內(nèi)部電子表格24相同、數(shù)量與多個(gè)輸入數(shù)據(jù)對(duì)應(yīng)的臨時(shí)表格(S900)。當(dāng)已經(jīng)生成一些臨時(shí)表格時(shí),僅需生成需要增加可用數(shù)量直至與輸入數(shù)據(jù)的數(shù)量相一致的表格。例如,當(dāng)輸入數(shù)據(jù)的數(shù)量增加時(shí),輸入數(shù)據(jù)選擇單元330生成數(shù)量等于輸入數(shù)據(jù)增加量的附加臨時(shí)表格。
接著,數(shù)據(jù)輸出單元350生成臨時(shí)字段,在臨時(shí)字段中將記錄使用在內(nèi)部輸出單元230中指定的計(jì)算公式所獲得的計(jì)算結(jié)果(S910)。當(dāng)已生成一些臨時(shí)字段時(shí),僅需生成與要記錄的結(jié)果的數(shù)量相比尺寸過(guò)短的區(qū)域。也就是,當(dāng)輸入數(shù)據(jù)增加時(shí),數(shù)據(jù)輸出單元350生成尺寸與輸入數(shù)據(jù)組的增加量相一致的臨時(shí)字段。
之后,輸入數(shù)據(jù)選擇單元330選擇在外部輸入單元200中記錄的各個(gè)輸入數(shù)據(jù),以作為與臨時(shí)表格的內(nèi)部輸入單元220相對(duì)應(yīng)的臨時(shí)單元的值(S920)。該處理可按以下方式執(zhí)行。電子表格裝置300包括具有用于對(duì)要更新和重新計(jì)算的單元進(jìn)行管理的隊(duì)列結(jié)構(gòu)(以下簡(jiǎn)單地稱之為隊(duì)列)的數(shù)據(jù)。在S920處,輸入數(shù)據(jù)選擇單元330對(duì)隊(duì)列添加各個(gè)臨時(shí)單元。
然后,計(jì)算單元340對(duì)設(shè)置在各個(gè)臨時(shí)表格中的計(jì)算公式進(jìn)行計(jì)算,并對(duì)臨時(shí)單元中的值進(jìn)行計(jì)算(S930)。該處理按照以下方式進(jìn)行。計(jì)算單元340從隊(duì)列的頭部逐個(gè)提取出單元,并重新計(jì)算單元的值。當(dāng)已將值記錄在單元中時(shí),計(jì)算單元340不執(zhí)行任何計(jì)算,而是,查找所有引用相關(guān)單元的單元,并將它們添加到隊(duì)列。例如,當(dāng)從隊(duì)列提取出臨時(shí)單元時(shí),計(jì)算單元340將其中設(shè)置有引用該臨時(shí)單元中的值的計(jì)算公式的其他單元添加到隊(duì)列。當(dāng)在單元中指定計(jì)算公式時(shí),計(jì)算單元340使用該單元中的計(jì)算公式進(jìn)行計(jì)算,獲得計(jì)算結(jié)果,并將引用計(jì)算結(jié)果的其他單元添加到隊(duì)列。例如,當(dāng)從隊(duì)列提取出引用臨時(shí)單元的特定單元時(shí),計(jì)算單元340使用設(shè)置在特定單元中的計(jì)算公式獲得計(jì)算結(jié)果,并將引用計(jì)算結(jié)果的其他單元添加到隊(duì)列。
數(shù)據(jù)輸出單元350將由計(jì)算單元340在對(duì)各個(gè)輸入數(shù)據(jù)使用計(jì)算公式時(shí)所獲得的結(jié)果記錄在臨時(shí)字段中(S940)。然后,數(shù)據(jù)輸出單元350將臨時(shí)字段中記錄的計(jì)算結(jié)果輸出,以作為在外部輸出單元210中要顯示的數(shù)據(jù)(S950)。當(dāng)外部電子表格22中包含有直接或間接引用該數(shù)據(jù)的其他計(jì)算公式時(shí),再次更新這些公式的計(jì)算結(jié)果。通過(guò)使用隊(duì)列,還可將該處理進(jìn)行標(biāo)準(zhǔn)化。例如,當(dāng)將計(jì)算結(jié)果輸出到外部輸出單元210時(shí),數(shù)據(jù)輸出單元350將外部輸出單元210輸出到隊(duì)列。然后,計(jì)算單元340提取外部輸出單元210,并對(duì)引用該外部輸出單元210的其他多個(gè)單元執(zhí)行計(jì)算。
根據(jù)參照?qǐng)D9描述的處理,可通過(guò)基于關(guān)聯(lián)信息26,僅執(zhí)行將輸入數(shù)據(jù)從外部電子表格22到內(nèi)部電子表格24的傳輸,以及利用使用隊(duì)列的統(tǒng)一化過(guò)程(unified procedures)執(zhí)行處理的其他部分,來(lái)實(shí)現(xiàn)電子表格處理。從而,可提供執(zhí)行諸如迭代處理之類計(jì)算處理的新功能,而且該新功能可視地易于為熟悉傳統(tǒng)電子表格系統(tǒng)操作的用戶所理解。
圖10顯示出S860處的處理細(xì)節(jié)。顯示單元360執(zhí)行用于顯示內(nèi)部電子表格24的以下處理。顯示單元360顯示出指示內(nèi)部輸入單元220中顯示的輸入數(shù)據(jù)在外部輸入單元200中記錄的多個(gè)輸入數(shù)據(jù)中的排列順序的標(biāo)識(shí)(上述的索引),此處,外部輸入單元200與內(nèi)部電子表格24相關(guān)聯(lián)(S1000)。將索引例如顯示在單元(諸如,如圖7所示單元B1)中。不過(guò),也可將索引顯示在用于從其他電子表格選擇內(nèi)部電子表格24的標(biāo)簽(例如,如圖7所示左下角部分)中。
顯示單元360在內(nèi)部輸入單元220中顯示多個(gè)輸入數(shù)據(jù)中的任何一個(gè)(S1010)。例如,如圖7示例性所示,將其中一個(gè)股票名稱顯示在單元C3中。所顯示的輸入數(shù)據(jù)為,在外部輸入單元200中記錄的輸入數(shù)據(jù)中,根據(jù)索引所指定的次序排列的輸入數(shù)據(jù)。下面,在設(shè)置有引用該輸入數(shù)據(jù)的計(jì)算公式的內(nèi)部輸出單元230中,顯示單元360顯示出對(duì)于在外部輸入單元200中顯示的輸入數(shù)據(jù)所獲得的計(jì)算結(jié)果(S1020)。例如,在圖7的單元C7中,顯示出對(duì)于在單元C3中所示股票的盈利或虧損。
如參照?qǐng)D1至10所述,關(guān)于該實(shí)施例的電子表格裝置30能夠采用簡(jiǎn)單操作執(zhí)行對(duì)于多個(gè)輸入數(shù)據(jù)的迭代處理。從而,在不必創(chuàng)建程序的條件下,能夠容易地對(duì)大量數(shù)據(jù)執(zhí)行集中處理。由該實(shí)施例的電子表格裝置30執(zhí)行的迭代處理包含另一迭代處理,或者可將其包含在其他迭代處理中。下面,將描述對(duì)于這樣套疊式(telescopic)結(jié)構(gòu)的迭代處理的示例。
圖11顯示出電子表格的另一示例。圖11中的左部分顯示出概念電子表格1200,右部分顯示出在該電子表格1200中的某單元中記錄的示例性數(shù)據(jù)。在該單元中記錄的數(shù)據(jù)采用XML(可擴(kuò)展標(biāo)記語(yǔ)言)書(shū)寫(xiě),并具有在頂層包含多個(gè)“group”標(biāo)簽的分層結(jié)構(gòu)。在“group”標(biāo)簽中從開(kāi)始標(biāo)簽到末尾標(biāo)簽所寫(xiě)的數(shù)據(jù)形成一個(gè)輸入數(shù)據(jù)組。也就是,多組“group”標(biāo)簽構(gòu)成多個(gè)輸入數(shù)據(jù)組。此外,在一組“group”標(biāo)簽的開(kāi)始標(biāo)簽和末尾標(biāo)簽之間寫(xiě)有多個(gè)“person”標(biāo)簽。
圖12顯示出基于該示例性電子表格執(zhí)行的處理的概念視圖。除作為第一表格的電子表格1200和作為第二表格的電子表格1210之外,獲取單元300還獲取作為第三表格的電子表格1220。如先前描述的示例那樣,當(dāng)將其中記錄有多個(gè)輸入數(shù)據(jù)(在此情形中為XML文檔)的電子表格1200的單元與電子表格1210的單元相關(guān)聯(lián)時(shí),輸入數(shù)據(jù)選擇單元330選擇各個(gè)輸入數(shù)據(jù)作為電子表格1210的相關(guān)單元的值。例如,將從“group”標(biāo)簽的開(kāi)始標(biāo)簽到末尾標(biāo)簽所寫(xiě)的數(shù)據(jù)選擇作為電子表格1210的單元的值。
此外,響應(yīng)于其中記錄有多個(gè)輸入數(shù)據(jù)(在此情形中,自“group”標(biāo)簽的開(kāi)始標(biāo)簽到末尾標(biāo)簽的數(shù)據(jù))的電子表格1210的單元與電子表格1220的單元相關(guān)聯(lián),輸入數(shù)據(jù)選擇單元330將各個(gè)輸入數(shù)據(jù)選擇作為電子表格1220的單元的值。例如,將“person”標(biāo)簽的開(kāi)始標(biāo)簽到末尾標(biāo)簽所寫(xiě)的數(shù)據(jù)選擇作為電子表格的單元的值。在電子表格1220中,對(duì)于使用一個(gè)“person”標(biāo)簽所寫(xiě)的數(shù)據(jù),描述計(jì)算公式。響應(yīng)于將各個(gè)輸入數(shù)據(jù)選擇作為電子表格1220中的單元的值,計(jì)算單元340對(duì)在電子表格1220中除該單元之外的單元中設(shè)置的計(jì)算公式進(jìn)行計(jì)算,并引用該單元。通過(guò)該處理,例如,可引用與“name”標(biāo)簽相對(duì)應(yīng)的值“hanako”,或與“age”標(biāo)簽相對(duì)應(yīng)的值24。
如參照?qǐng)D11和12所述,可使用套疊式結(jié)構(gòu)執(zhí)行多個(gè)迭代處理。在此情形中,對(duì)于每一層,僅需將等效于單層的數(shù)據(jù)的處理寫(xiě)在電子表格中。因此,能夠容易地實(shí)現(xiàn)對(duì)于多層數(shù)據(jù)(諸如,XML文檔)的處理。
下面,將描述其中對(duì)于除電子表格之外的數(shù)據(jù)采用該實(shí)施例的電子表格裝置30的示例。國(guó)際商用機(jī)器公司開(kāi)發(fā)出了一種稱為ADIEU(用于終端用戶的特殊開(kāi)發(fā)和集成工具,Ad Hoc Development andIntegration tool for End Users)的系統(tǒng)。該系統(tǒng)使得能夠簡(jiǎn)單制作出由多個(gè)Web頁(yè)組成的Web應(yīng)用。在ADIEU中,Web頁(yè)或程序,或程序所引用的數(shù)據(jù)群由稱為卡(card)的窗體(window)所表示。用戶僅需在每個(gè)卡中的單元中寫(xiě)入數(shù)據(jù),以定義Web頁(yè)的顯示內(nèi)容或程序的操作內(nèi)容。用戶還能夠創(chuàng)建在一個(gè)卡與另一卡之間的引用,從而能夠在Web頁(yè)與數(shù)據(jù)之間的引用之間定義超鏈接。
圖13顯示出對(duì)于ADIEU系統(tǒng)的傳統(tǒng)示例。在該實(shí)施例中的Web應(yīng)用程序采用與如圖2至4所示電子表格所用相同的方式計(jì)算多個(gè)股票的盈利和虧損。該程序由卡A、卡B、卡C、卡D和卡E表示??˙和卡E表示變量的定義。具體而言,卡B表示數(shù)組變量stockNames(股票名稱)是AAA,....,數(shù)組變量qtys(數(shù)量)為200,....,以及數(shù)組變量price(價(jià)格)為80,....??‥表示變量total(合計(jì))的值為0。變量total用于存儲(chǔ)計(jì)算結(jié)果,當(dāng)計(jì)算未完成時(shí),存儲(chǔ)初始值0。
卡A顯示出對(duì)于迭代處理的控制功能。根據(jù)該控制功能,對(duì)于卡C和卡D的內(nèi)容執(zhí)行迭代處理,如圖所示,并且重復(fù)該處理,直至達(dá)到等于針對(duì)數(shù)組變量stockNames輸入的元素?cái)?shù)量的累積計(jì)數(shù)。此外,對(duì)于卡A定義了變量counter(計(jì)數(shù)器),從數(shù)組變量stockNames的頭部開(kāi)始,每執(zhí)行迭代處理一次它就增加一。對(duì)于卡C表示出這樣的程序,即,提取出相對(duì)數(shù)組變量stockNames的頭部的距離等于變量counter所保存的值的元素,并且獲得股票的當(dāng)前價(jià)格。對(duì)于卡D表示出這樣的程序,即,將針對(duì)卡C的程序所獲得的當(dāng)前價(jià)格減去股票的購(gòu)買價(jià)格,并將結(jié)果與所持有股票的數(shù)量相乘,將結(jié)果輸入到對(duì)于卡E所定義的變量total中。
如上所述,為了使用傳統(tǒng)ADIEU系統(tǒng)執(zhí)行迭代處理,必須引入稱為counter的歸納變量,以及必須定義每次執(zhí)行迭代處理時(shí)的細(xì)節(jié)。這樣的定義過(guò)程對(duì)于不能熟練創(chuàng)建程序的用戶來(lái)說(shuō)可能比較困難。此外,在該示例中,用戶僅能引用總盈利和虧損,不能引用在計(jì)算處理期間獲得的各品種(brand)的盈利和虧損。從而,當(dāng)出現(xiàn)數(shù)據(jù)或計(jì)算程序錯(cuò)誤時(shí),難以識(shí)別出錯(cuò)位置。
圖14顯示出對(duì)于ADIEU系統(tǒng)應(yīng)用該實(shí)施例的電子表格裝置30。通過(guò)對(duì)ADIEU系統(tǒng)使用電子表格裝置30,用戶僅需對(duì)各個(gè)卡的單元輸入必要的值,以便能夠在不必清楚了解如何定義迭代處理的條件下執(zhí)行迭代處理。具體而言,在圖14中的Web應(yīng)用程序由卡B、卡C、卡E和卡F表示。卡B以及如圖13所示的卡B定義了數(shù)組變量stockNames、數(shù)組變量qtys和數(shù)組變量prices,此外還定義了數(shù)組變量gainsAndLosses(盈利和虧損)??‥定義了變量total。卡B和卡E對(duì)應(yīng)于對(duì)于電子表格示例中的第一電子表格,數(shù)組變量stockNames,qtys和prices對(duì)應(yīng)于各個(gè)輸入數(shù)據(jù)。
此外,卡C和卡E對(duì)應(yīng)于電子表格示例中的第二電子表格。卡F表示變量stockName、變量qty和變量prices,圖14中的箭頭表示關(guān)聯(lián)。變量stockName與數(shù)組變量stockNames相關(guān)聯(lián),變量qty與數(shù)組變量qtys相關(guān)聯(lián),變量price與數(shù)組變量prices相關(guān)聯(lián)。根據(jù)這些關(guān)聯(lián),輸入數(shù)據(jù)選擇單元330順序選擇卡B的數(shù)組變量中的各個(gè)元素作為卡F的變量的元素。例如,輸入數(shù)據(jù)選擇單元330選擇數(shù)組變量stockNames的每個(gè)元素作為變量stockName的元素。在如圖14所示狀態(tài)中,選擇了第一元素。
此外,卡F定義了變量gainQrLoss(盈利或虧損)。在表示該變量的定義的單元中設(shè)置了計(jì)算公式。該計(jì)算公式表示出這樣的計(jì)算,即,將由卡C計(jì)算的股票當(dāng)前價(jià)格減去由輸入數(shù)據(jù)選擇單元330所選擇的股票的購(gòu)買價(jià)格,將結(jié)果與輸入數(shù)據(jù)選擇單元330所選擇的股票的股票數(shù)量相乘。將變量gainOrLoss與卡B的數(shù)組變量gainOrLosses相關(guān)。根據(jù)該關(guān)聯(lián),數(shù)據(jù)輸出單元350將變量gainOrLoss的值輸出作為數(shù)組變量gainOrLosses的每個(gè)元素。
如上所述,通過(guò)使用圖14中的示例以及電子表格的示例,通過(guò)簡(jiǎn)單的輸入操作就能夠容易實(shí)現(xiàn)迭代處理。如上所述,該實(shí)施例的電子表格裝置30不僅可應(yīng)用于電子表格系統(tǒng),還可應(yīng)用于其他系統(tǒng),只要系統(tǒng)定義出單元以及引用這些單元的計(jì)算即可。
圖15顯示出作為電子表格系統(tǒng)10的信息處理裝置500的硬件配置示例。信息處理裝置500包括CPU外圍部分,包括通過(guò)主機(jī)控制器1082互連的CPU 1000、RAM 1020和圖形控制器1075;輸入/輸出部分,包括通過(guò)輸入/輸出控制器1084與主機(jī)控制器1082相連的通信接1030、硬盤驅(qū)動(dòng)器1040和CD-ROM驅(qū)動(dòng)器1060;和遺留輸入/輸出部分,包括與輸入/輸出控制器1084相連的ROM 1010、軟盤驅(qū)動(dòng)器1050和輸入/輸出芯片1070。
主機(jī)控制器1082將RAM 1020與CPU 1000和圖形控制器1075相連,CPU 1000以高傳輸速率訪問(wèn)RAM 1020。基于在ROM 1010和RAM 1020中存儲(chǔ)的程序?qū)PU 1000進(jìn)行操作,由CPU 1000對(duì)各個(gè)組件進(jìn)行操作。圖形控制器1075獲得例如由CPU 1000在設(shè)置用于RAM 1020的幀緩沖器中生成的圖像數(shù)據(jù),并在顯示設(shè)備1080上顯示出圖像數(shù)據(jù)。也可將該幀緩沖器不設(shè)置在RAM 1020中,而是將其內(nèi)部存儲(chǔ)于圖形控制器1075中。
輸入/輸出控制器1084將主機(jī)控制器1082連接到通信接口1030、硬盤驅(qū)動(dòng)器1040和CD-ROM驅(qū)動(dòng)器1060,通信接口1030比較而言是較快速的輸入/輸出設(shè)備。通信接口1030通過(guò)網(wǎng)絡(luò)與外部設(shè)備進(jìn)行通信。硬盤驅(qū)動(dòng)器1040用于存儲(chǔ)由信息處理裝置500使用的程序和數(shù)據(jù)。CD-ROM驅(qū)動(dòng)器1060從CD-ROM 1095讀取程序或數(shù)據(jù),并將其傳輸?shù)絉AM 1020或硬盤驅(qū)動(dòng)器1040。
此外,ROM 1010、軟盤驅(qū)動(dòng)器1050和比較而言較慢的輸入/輸出設(shè)備(如,輸入/輸出芯片1070)與輸入/輸出控制器1084相連。ROM 1010用于存儲(chǔ),例如,在啟動(dòng)信息處理裝置500時(shí)CPU 1000執(zhí)行的引導(dǎo)程序,和取決于信息處理裝置500的硬件的程序。軟盤驅(qū)動(dòng)器1050從軟盤1090讀取程序或數(shù)據(jù),并通過(guò)輸入/輸出芯片1070將其提供給RAM 1020或硬盤驅(qū)動(dòng)器1040。輸入/輸出芯片1070例如通過(guò)并行端口、串行端口、鍵盤端口和鼠標(biāo)端口,與軟盤1090或多種類型的輸入/輸出設(shè)備連接。
通過(guò)將其存儲(chǔ)在諸如軟盤1090、CD-ROM 1095或IC卡之類的記錄介質(zhì)上,為用戶提供用于信息處理裝置的程序500。該程序通過(guò)輸入/輸出芯片1070和/或輸入/輸出控制器1084讀取,并將其安裝到信息處理裝置500中,由信息處理裝置500執(zhí)行。由于程序允許信息處理裝置500執(zhí)行與參照?qǐng)D1至14所述由電子表格系統(tǒng)10所執(zhí)行同樣的操作,因此,不再對(duì)其給出更多描述。
可將上述程序存儲(chǔ)在外部存儲(chǔ)介質(zhì)上。存儲(chǔ)介質(zhì)不僅可為軟盤1090或CD-ROM 1095,還可為光記錄介質(zhì),例如DVD或PD,磁光記錄介質(zhì),例如MD,磁帶介質(zhì),或半導(dǎo)體存儲(chǔ)器,例如IC卡?;蛘撸刹捎糜糜谂c專用通信網(wǎng)絡(luò)或Internet相連的服務(wù)器系統(tǒng)的存儲(chǔ)介質(zhì),例如,硬盤或RAM,可通過(guò)網(wǎng)絡(luò)對(duì)信息處理裝置500提供程序。
以上參照實(shí)施例對(duì)本發(fā)明進(jìn)行了描述;然而,本發(fā)明的技術(shù)范圍并不限于這些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員而言,顯然可對(duì)這些實(shí)施例進(jìn)行多種修改和變型。例如,當(dāng)在預(yù)定外部輸入單元中記錄單個(gè)輸入數(shù)據(jù)的條件下,輸入數(shù)據(jù)選擇單元330可重復(fù)選擇輸入數(shù)據(jù)作為與多個(gè)臨時(shí)表格相對(duì)應(yīng)的外部輸入單元的值。在此情形中,對(duì)于多個(gè)臨時(shí)表格,重復(fù)執(zhí)行對(duì)于該單個(gè)輸入數(shù)據(jù)的計(jì)算。對(duì)于外部電子表格中定義的常數(shù)可由內(nèi)部電子表格引用的情形,該設(shè)置是行之有效的。此外,當(dāng)在外部電子表格中的多個(gè)單元中記錄有多個(gè)輸入數(shù)據(jù)組,而且將這些單元與內(nèi)部電子表格中的單元相關(guān)聯(lián)時(shí),就存在其中外部電子表格的單元中的多個(gè)數(shù)據(jù)元素彼此各不相同的情形。在該情形中,還可選擇特定設(shè)置,例如,與元素的最大數(shù)量相一致來(lái)執(zhí)行迭代計(jì)算,對(duì)缺少數(shù)據(jù)的單元采用特定設(shè)置值,或者與元素的最小數(shù)量相一致來(lái)執(zhí)行迭代處理,忽視多出的數(shù)據(jù)元素。作為另一示例,能夠僅通過(guò)使用在特定內(nèi)部電子表格中指定的計(jì)算公式,或者通過(guò)使用在利用特定內(nèi)部電子表格作為外部電子表格的另一內(nèi)部電子表格中指定的計(jì)算公式,引用特定內(nèi)部電子表格的單元的值。通過(guò)這樣的設(shè)置,能夠消除因生成多個(gè)臨時(shí)表格而造成的引用目的地模糊問(wèn)題,能夠簡(jiǎn)化電子表格系統(tǒng)的開(kāi)發(fā)和維護(hù)以及用戶的操作。從本發(fā)明的權(quán)利要求顯然得知,這樣的修改或改進(jìn)也被包含在本發(fā)明的技術(shù)范圍內(nèi)。
權(quán)利要求
1.一種通過(guò)設(shè)置計(jì)算表格中每個(gè)單元的值的計(jì)算公式來(lái)針對(duì)該單元執(zhí)行計(jì)算處理的系統(tǒng),包括輸入數(shù)據(jù)選擇單元,用于響應(yīng)于將其中記錄有多個(gè)輸入數(shù)據(jù)的表格中的一個(gè)或多個(gè)單元與第一單元相關(guān)聯(lián),順序選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值;計(jì)算單元,用于響應(yīng)于選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值,執(zhí)行在除第一單元之外的單元中設(shè)置的計(jì)算公式,并引用第一單元;以及數(shù)據(jù)輸出單元,用于將計(jì)算單元針對(duì)各個(gè)輸入數(shù)據(jù)獲得的計(jì)算公式的計(jì)算結(jié)果作為一個(gè)或多個(gè)第二單元的值輸出。
2.根據(jù)權(quán)利要求1的系統(tǒng),還包括獲取單元,用于獲取第一和第二表格;其中響應(yīng)于將其中記錄有多個(gè)輸入數(shù)據(jù)的第一表格中的一個(gè)或多個(gè)單元與第二表格的第一單元相關(guān)聯(lián),輸入數(shù)據(jù)選擇單元順序選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值,響應(yīng)于選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值,計(jì)算單元對(duì)在除第一單元之外的第二表格的單元中設(shè)置的計(jì)算公式進(jìn)行計(jì)算,并引用第一單元;以及數(shù)據(jù)輸出單元將計(jì)算單元針對(duì)各個(gè)輸入數(shù)據(jù)獲得的計(jì)算公式的計(jì)算結(jié)果作為第一表格中一個(gè)或多個(gè)第二單元的值輸出。
3.根據(jù)權(quán)利要求2的系統(tǒng),還包括顯示單元,用于響應(yīng)于將其中記錄有多個(gè)輸入數(shù)據(jù)的一個(gè)或多個(gè)單元與第一單元相關(guān)聯(lián),顯示具有表示對(duì)輸入數(shù)據(jù)應(yīng)用計(jì)算公式的符號(hào)的第二表格。
4.根據(jù)權(quán)利要求3的系統(tǒng),其中,顯示單元在第一單元中顯示任何輸入數(shù)據(jù),并在設(shè)置計(jì)算公式的單元中顯示針對(duì)第一單元中所顯示輸入數(shù)據(jù)的計(jì)算結(jié)果。
5.根據(jù)權(quán)利要求4的系統(tǒng),其中,顯示單元顯示具有標(biāo)識(shí)的第二表格,所述標(biāo)識(shí)表示在第一單元中顯示的輸入數(shù)據(jù)內(nèi)的排列順序。
6.根據(jù)權(quán)利要求5的系統(tǒng),還包括輸入單元,用于接受用來(lái)改變標(biāo)識(shí)的輸入;其中,響應(yīng)于改變標(biāo)識(shí),顯示單元將要在第一單元中顯示的輸入數(shù)據(jù)改變?yōu)橛筛淖兊臉?biāo)識(shí)所標(biāo)識(shí)的輸入數(shù)據(jù)。
7.根據(jù)權(quán)利要求2的系統(tǒng),其中輸入數(shù)據(jù)選擇單元生成結(jié)構(gòu)具有與第二表格相同的結(jié)構(gòu)、數(shù)量與輸入數(shù)據(jù)相等的臨時(shí)表格,并選擇輸入數(shù)據(jù)作為與第一單元相對(duì)應(yīng)的臨時(shí)表格的臨時(shí)單元的各個(gè)值;計(jì)算單元使用設(shè)置在臨時(shí)表格中的計(jì)算公式,分別計(jì)算臨時(shí)單元的值;以及數(shù)據(jù)輸出單元生成臨時(shí)字段,以記錄計(jì)算結(jié)果,將由計(jì)算單元使用計(jì)算公式針對(duì)輸入數(shù)據(jù)獲得的計(jì)算結(jié)果記錄在臨時(shí)字段中,并且將臨時(shí)字段中記錄的計(jì)算結(jié)果輸出到第二單元。
8.根據(jù)權(quán)利要求7的系統(tǒng),還包括確定單元,用于確定輸入數(shù)據(jù)是否更新;其中,在輸入數(shù)據(jù)的數(shù)量增加的條件下,計(jì)算單元根據(jù)增加的輸入數(shù)據(jù)的數(shù)量生成臨時(shí)表格。
9.根據(jù)權(quán)利要求8的系統(tǒng),其中,在輸入數(shù)據(jù)的數(shù)量增加的條件下,數(shù)據(jù)輸出單元生成其大小基于增加的輸入數(shù)據(jù)的數(shù)量的臨時(shí)字段。
10.根據(jù)權(quán)利要求1的系統(tǒng),還包括訪問(wèn)控制單元,用于響應(yīng)于其中記錄有多個(gè)輸入數(shù)據(jù)的一個(gè)或多個(gè)單元與第一單元相關(guān)聯(lián),禁止用戶改變第一單元和第二單元的值。
11.根據(jù)權(quán)利要求1的系統(tǒng),還包括確定單元,用于確定每個(gè)輸入數(shù)據(jù)是否更新;其中響應(yīng)于更新輸入數(shù)據(jù)之一,輸入數(shù)據(jù)選擇單元選擇更新的輸入數(shù)據(jù)作為第一單元的值;針對(duì)更新的輸入數(shù)據(jù),計(jì)算單元引用第一單元對(duì)計(jì)算公式進(jìn)行計(jì)算;以及數(shù)據(jù)輸出單元將由計(jì)算單元針對(duì)更新的輸入數(shù)據(jù)所獲得的計(jì)算公式的計(jì)算結(jié)果輸出。
12.根據(jù)權(quán)利要求2的系統(tǒng),其中獲取單元還獲取第三表格;響應(yīng)于其中記錄有多個(gè)輸入數(shù)據(jù)的第二表格的一個(gè)或多個(gè)單元與第三表格的第三單元相關(guān)聯(lián),輸入數(shù)據(jù)選擇單元選擇各個(gè)輸入數(shù)據(jù)作為第三單元的值;以及響應(yīng)于將各個(gè)輸入數(shù)據(jù)選擇作為第三單元的值,計(jì)算單元針對(duì)在除第三單元之外的第三表格中的單元中設(shè)置的計(jì)算公式進(jìn)行計(jì)算,并引用第三單元。
13.一種通過(guò)設(shè)置計(jì)算表格中每個(gè)單元的值的計(jì)算公式來(lái)針對(duì)該單元執(zhí)行計(jì)算處理的方法,包括步驟響應(yīng)于將其中記錄有多個(gè)輸入數(shù)據(jù)的表格中的一個(gè)或多個(gè)單元與第一單元相關(guān)聯(lián),順序選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值;響應(yīng)于選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值,執(zhí)行設(shè)置在除第一單元之外的單元中的計(jì)算公式,并引用第一單元;以及將計(jì)算單元針對(duì)各個(gè)輸入數(shù)據(jù)獲得的計(jì)算公式的計(jì)算結(jié)果作為一個(gè)或多個(gè)第二單元的值輸出。
全文摘要
本發(fā)明的目的在于在不創(chuàng)建程序的條件下容易地對(duì)數(shù)據(jù)執(zhí)行迭代處理。一種通過(guò)設(shè)置計(jì)算表格中每個(gè)單元的值的計(jì)算公式來(lái)針對(duì)該單元執(zhí)行計(jì)算處理的系統(tǒng),包括輸入數(shù)據(jù)選擇單元,用于響應(yīng)于將其中記錄有多個(gè)輸入數(shù)據(jù)的表格中的一個(gè)或多個(gè)單元與第一單元相關(guān)聯(lián),順序選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值;計(jì)算單元,用于響應(yīng)于選擇各個(gè)輸入數(shù)據(jù)作為第一單元的值,執(zhí)行在除第一單元之外的單元中設(shè)置的計(jì)算公式,并引用第一單元;以及數(shù)據(jù)輸出單元,用于將計(jì)算單元針對(duì)各個(gè)輸入數(shù)據(jù)獲得的計(jì)算公式的計(jì)算結(jié)果作為一個(gè)或多個(gè)第二單元的值輸出。
文檔編號(hào)G06Q50/00GK101038584SQ200710084440
公開(kāi)日2007年9月19日 申請(qǐng)日期2007年3月2日 優(yōu)先權(quán)日2006年3月14日
發(fā)明者三井欽一 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司