JPH07129688A - 表情報処理装置 - Google Patents

表情報処理装置

Info

Publication number
JPH07129688A
JPH07129688A JP5294210A JP29421093A JPH07129688A JP H07129688 A JPH07129688 A JP H07129688A JP 5294210 A JP5294210 A JP 5294210A JP 29421093 A JP29421093 A JP 29421093A JP H07129688 A JPH07129688 A JP H07129688A
Authority
JP
Japan
Prior art keywords
heading
expression
item
group
heading item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP5294210A
Other languages
English (en)
Inventor
Kenichi Kobayashi
健一 小林
Akira Suzuki
明 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP5294210A priority Critical patent/JPH07129688A/ja
Publication of JPH07129688A publication Critical patent/JPH07129688A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

(57)【要約】 【目的】 表を多彩にレイアウトすることができ、レイ
アウトに依存せずに表計算を行なうことのできる表情報
処理装置を提供する。 【構成】 入力手段1から入力される、表の見出し情報
となり得る見出し情報および組生成手段2が参照する式
や値等の入力データは、必要に応じてデータ形式の変換
が行なわれ、記憶手段3に記憶される。記憶手段3は、
見出し情報および式を対応させて記憶することにより、
構造化された表の情報を保持する。組生成手段2は、記
憶手段3に記憶されている見出し情報と式をもとに、式
を計算して、見出し項目列と表データの組を生成し、利
用手段4に渡す。利用手段4は、組生成手段2が生成す
る見出し項目列と表データの組を用いて、多彩なレイア
ウトの表を作成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、表計算を行なう表情報
処理装置に関するものである。
【0002】
【従来の技術】主としてオフィス等で、集計作業、業務
分析、数値解析などの場面で用いられるアプリケーショ
ンソフトウェアに、表計算ソフトウェアがある。従来、
実際に用いられてきた表計算ソフトウェアには、ロータ
ス社のLotus1−2−3(商品名)に代表される一
般的なものと、特殊なデータ管理方法を採用している同
じくロータス社のImprov(商品名)に代表される
タイプの2種類が存在する。
【0003】表計算ソフトウェアは、1枚または複数枚
の仮想的な計算用紙を、計算機の画面に表示する。この
仮想的な計算用紙は、一般にワークシートと呼ばれ、表
計算ソフトウェアが作業領域として用いる。表計算ソフ
トウェアの使用者は、ワークシート上に、文字列デー
タ、数値データ、計算式、表枠となる罫線等を入力し、
編集を行なう。表計算ソフトウェアは、ワークシート上
の計算式を計算し、他のデータとともに、画面に表示す
る。
【0004】表計算ソフトウェアは、ワークシートを複
数の矩形領域に分割して管理する。各矩形領域は、セル
と呼ばれる。表計算ソフトウェアは、1つのセルに、ユ
ーザが入力した文字列データや数値データを格納し、ま
た、計算値(計算式の計算結果)を格納する。
【0005】図2は、従来の一般的な表計算ソフトウェ
アにおける表示画面の一例の説明図である。図中、1
1,12はセルである。図2に示す表は、ある調査を行
なった結果を表わし、馬、牛、鳩、烏、鶏、蟻、蝶の各
動物の固体数と、各動物の足の総数を一覧するための表
を示している。
【0006】画面には、表を表示するためのワークシー
トが表示されている。ワークシートは、行と列とによ
り、複数の矩形領域に分割されている。1つの行と1つ
の列が交わる部分の矩形領域それぞれがセルである。ワ
ークシート上の各列には、A,B,C,・・・の順に列
番号が振られ、各行には、1,2,3,・・・の順に行
番号が振られている。各セルは、そのセルが存在する列
の列番号と、そのセルが存在する行の行番号の組合わせ
によって参照される。この組合わせは、セル番地と呼ば
れ、ワークシート上のセルの絶対番地表示である。例え
ば、図2において、セル11のセル番地はC3である。
また、セル12のセル番地はD3である。計算式中でセ
ルデータを参照する際には、セル番地が用いられる。例
えば、セル11の値の4倍とするように計算する計算式
は、“C3*4”と書くことができる。この式をセル1
2に記述することにより、セル12の位置には、式を計
算した結果が表示される。表の各見出しは、それぞれの
セルに文字列データとして入力する。
【0007】ところで、セル番地を用いてセルを参照す
ることには問題がある。一般に、表をワークシート上に
設計し、計算式を入力した後で、表のレイアウトを変更
すると、計算式の再入力が必要となる場合がある。特
に、行見出しを列見出しに変更したり、列見出しを行見
出しに変更したりする場合には、ほとんどの計算式を再
入力しなければならない。これは、レイアウトの変更を
行なうことにより、計算式中で参照されているセルが移
動するため、計算式中のセル番地が別のセル内容を参照
してしまうためである。したがって、従来一般の表計算
ソフトウェアにおいて、一旦作成した表のレイアウトを
変えることは、大きな手間のかかる作業である。
【0008】一方、上述のロータス社のImprovに
代表される従来の表計算ソフトウェアでは、一般の表計
算ソフトウェアとは異なり、計算式を入力した後で、表
のレイアウトの行見出しを列見出しに、列見出しを行見
出しに変更することが可能である。これは、計算式中の
セルの参照を、ワークシート上の絶対番地であるセル番
地ではなく、表の見出し項目の組で行なっているためで
ある。
【0009】図3は、従来の表計算ソフトウェアの別の
例におけるワークシートの一例の説明図である。図中、
13,14はセルである。図3は、図2に示した表と同
様の内容の表を示している。
【0010】ワークシート中のセル13は、行見出しの
見出し項目“馬”、および、列見出しの見出し項目“個
体数”によって特定される。そのため、セル13は見出
し項目の組“馬:個体数”で参照することができる。セ
ル13の値は“2”である。また、セル14は、見出し
項目の組“馬:足の総数”で参照することができる。セ
ル14の値は、セル13を参照するセル参照を用いた式 馬:足の総数=馬:個体数*4 によって計算される。
【0011】図4は、従来の表計算ソフトウェアの別の
例における表の変形例の説明図である。図中、15,1
6はセルである。図3に示す表を、図4に示す表のよう
にレイアウトを変更することは、容易である。なぜな
ら、レイアウト変更後においても、参照すべきセルが同
一の見出し項目の組で参照され、したがって、同一の計
算式を用いることができるためである。図4のセル15
は、図3と同じく見出し項目の組“馬:個体数”で参照
することができ、セル16の値はレイアウト変更前と同
じ式 馬:足の総数=馬:個体数*4 で計算できる。
【0012】また、上述のImprovでは、見出し項
目の間に階層的な構造を与えることができる。図3に示
した表では、行見出し項目も列見出し項目もフラットに
並んでいるだけであるが、一塊の行見出し項目、または
一塊の列見出し項目を、グループ項目の子項目として定
義することができる。この定義をグルーピングという。
【0013】図5は、従来の表計算ソフトウェアの別の
例におけるグルーピングの一例の説明図である。図5に
示した表において、例えば、見出し項目“馬”,“牛”
は、グループ項目“ほ乳類”の子項目としてグルーピン
グされている。また、グループ項目は他のグループ項目
の子項目となり得る。このため、見出し項目を多層に構
造化することができる。
【0014】グループ項目は、同グループに属するセル
の集合を一括して参照するために使うことができる。グ
ループ項目を用いたセル集合の参照を計算式中に記述す
ることにより、複数の計算式を一つの計算式で置き換え
ることができる。図5において、各動物の足の総数は、
個体数から次の計算式によって求められている。 ほ乳類:足の総数=ほ乳類:個体数*4 鳥類:足の総数=鳥類:個体数*2 昆虫類:足の総数=昆虫類:個体数*6
【0015】ただし、Improvのグルーピングには
制限がある。1つのグループ項目の全ての子項目(見出
し項目、およびそのグループ項目の子項目であるグルー
プ項目)は、表のレイアウト上、連続して並んでいなけ
ればならない。すなわち、レイアウト上、跳び跳びの項
目をグルーピングすることはできず、また、行見出し、
列見出しの双方にまたがったグループを設定することも
できない。さらに、1つの項目が、異なる複数の項目の
共通の子項目であるという状況も許されない。
【0016】このように、Improvでは、一旦作成
した計算表のレイアウトを変更することが、従来の一般
の表計算ソフトウェアに比べて容易となっている。しか
し、Improvにおいても、レイアウト変更の自由度
には、以下に述べるような限界がある。
【0017】図5に示した表において、各行を足の総数
が小さい順に並べ換えることを考える。並べ換えを行な
っても、表の表わす情報が変化するわけではないので、
これは単なるレイアウトの変更であると考えられる。し
かし、もし各行を足の総数の小さい順に並べ替えると、
“ほ乳類”でグルーピングされている“馬”と“牛”の
間に“鳥類”が割り込んでしまい、“ほ乳類”グループ
が分断されてしまう。これは、Improvのグルーピ
ングの制約に反する。Improvでは、これを回避す
るため、複数のグループにまたがってソートすることを
禁じている。したがって、まずグルーピングを解除し、
その後でなければ、上述のようなソートを行なうことは
できない。しかし、Improvにおいて、グルーピン
グの解除は、表データの論理的な構造を変更することに
よってのみ表現される。すなわち、表データの論理的な
子構造を変更しなければ、ソートというレイアウト変更
を行なうことができない。
【0018】グルーピングの解除は、計算式の変更をも
引き起こす。グルーピングを解除すると、図5に示した
表は、図3に示した表と同じレイアウトの表となる。し
かし、図5に示した計算式はそのままでは意味を持たな
くなる。すなわち、計算式中に含まれる“ほ乳類”、
“鳥類”等のグループ項目が無効となるため、そのまま
では計算できない。したがって、Improvでは、グ
ループ解除後も式が有効となるように、式中のグループ
を見出し項目のレンジ(範囲)に置き換える。見出し項
目のレンジは、行見出しや列見出しに、連続して並んで
いる項目の集合を、両端の項目で指定したものである。
例えば、グループ項目“鳥類”は、見出し項目のレンジ
“鳩..鶏”に置き換えられる。これは、項目集合
{“鳩”,“烏”,“鶏”}を表わす。置換後の式は次
のようになる。 馬..牛:足の総数=馬..牛:個体数*4 鳩..鶏:足の総数=鳩..鶏:個体数*2 蟻..蝶:足の総数=蟻..蝶:個体数*6
【0019】図6は、従来の表計算ソフトウェアの別の
例におけるソート後の表の一例の説明図である。図5に
示した表の例において、グルーピングを解除すると、ソ
ートを行なうことができる。ここでは、足の総数の昇順
でソートする。しかし、ソートの際には、Improv
では、式を書き換えない。ソート後も上述の見出し項目
のレンジを用いた式をそのまま用いる。ところが、ソー
ト後には、これらの式の見出し項目のレンジは、意図し
たレンジを示さなくなるので、間違った計算結果が得ら
れることになる。すなわち、“馬”,“鶏”,“烏”,
“鳩”,“牛”は、レンジ“馬..牛”の間にあるの
で、4本足とみなされて計算される。また、計算式中の
レンジ“蟻..蝶”及び“鳩..鶏”は表示順と逆にな
るので意味を失い、計算式は無効となる。そのため、
“蝶”,“蟻”の足の総数は計算されない。そのため、
計算式の変更が必要になる。このように、データ構造や
式を変更せずに、レイアウトだけを変更するという要求
に関し、Improvでは対応することができない。
【0020】表のデータ構造を変えずにレイアウトを自
由に変更する装置として、例えば、特願平5−5293
6号に記載されている表生成装置や、特願平5−529
37号に記載されている表情報処理装置等がある。これ
らの装置は、表のレイアウトに関しては大きな自由度を
有しているものの、計算機能を持っていない。
【0021】図7は、レイアウトが自由に変更できる従
来の装置におけるデータ構造の説明図である。特願平5
−52936号,特願平5−52937号に記載されて
いる装置の表のデータ構造は、図7に示すように、表の
見出しに関する見出し情報と、表の内容を表す表データ
から構成される。見出し情報には、見出し項目の列と表
データとの対応関係が含まれる。例えば、見出し項目
「ほ乳類」,「犬」,「テスト数」の列に、表データ
「10」が対応している。このようなデータ構造から、
別に与えられたレイアウト情報にしたがって、例えば特
願平5−52936号に記載されている表生成装置によ
り、表レイアウトが生成される。
【0022】図8、図9は、図7に示したデータ構造か
ら生成される表の一例の説明図である。上述のように、
表のデータ構造がレイアウトから独立であるため、同一
の表データ構造から多彩なレイアウトを生成することが
可能である。図7に示したデータ構造から、図8に示し
た表レイアウトを容易に生成することができる。また、
同じ表のデータ構造から、図9に示す表レイアウトを生
成することも可能である。このような多彩なレイアウト
を生成することは、従来の一般の表計算ソフトウェア
や、Improv等でも不可能である。しかし、これら
の技術は、通常の表についての発明であり、計算機能を
持たない。そのため、従来の表計算ソフトウェアであれ
ば、計算によって求めることができるセルデータであっ
ても、これらの技術においては、いちいちデータを入力
する必要があり、煩雑である。
【0023】
【発明が解決しようとする課題】本発明は、上述した事
情に鑑みてなされたもので、表を多彩にレイアウトする
ことができ、レイアウトに依存せずに表計算を行なうこ
とのできる表情報処理装置を提供することを目的とする
ものである。
【0024】
【課題を解決するための手段】本発明は、表計算を行な
う表情報処理装置において、表の見出しに関する見出し
情報と表の内容を示す式または値との対応を記憶する記
憶手段と、該記憶手段に記憶されている見出し情報及び
式や値を参照して式の計算を行ない見出し情報と表デー
タの組を生成する組生成手段を有することを特徴とする
ものである。
【0025】前記見出し情報は、見出し項目の集合と式
または値を指し示すポインタを有し、該ポインタにより
見出し項目の集合と式または値を対応させることによ
り、式または値の共有を可能とすることができる。
【0026】前記見出し情報と対応付けられる式中に、
見出し項目の集合を処理する関数を記述可能に構成する
ことができる。
【0027】また、前記見出し情報は、見出し項目の集
合を有し、該見出し項目の集合中の見出し項目として見
出し項目の集合を記述可能に構成することができる。
【0028】さらに、前記見出し情報は、見出し項目の
集合を与えられて真偽値を返す述語により記述され、見
出し項目の集合が与えられたとき、述語が真となる場合
に、述語に対応する式または値から、与えられた見出し
項目の集合と表データの組を生成するように構成するこ
とができる。
【0029】
【作用】本発明によれば、表情報処理装置において、記
憶手段に、表の見出しに関する見出し情報と表の内容を
表す式または値の対応を記憶し、その情報を用いて組生
成手段が式から表の内容を表わす表データを計算して、
見出し情報と表データの組を生成する。見出し情報と表
データの組から表の多様なレイアウトを生成する技術
は、例えば、上述の特願平5−52936号等で知られ
ている。したがって、この技術を用いることによって、
多様なレイアウトの表を生成することができる。
【0030】記憶手段に記憶される見出し情報が、見出
し項目の集合と表データを指し示すポインタを有し、該
ポインタにより見出し項目の集合と式または値を対応さ
せて記憶することにより、異なる複数の見出し項目の集
合間で式または値を共有することができる。これにより
データ量を少なくし、入力の手間を減少させるととも
に、共通の式または値に対する一元管理が可能になる。
【0031】見出し情報と対応付けられる式中に、見出
し項目の集合を処理する関数を記述可能とし、この関数
が各見出し項目またはNULL値を返すことにより、見
出し項目の集合の間で式を共有することができる。これ
は式中に見出し項目の集合を直接記述せず、状況によっ
て別々の見出し項目の集合を返す共通の関数を記述する
ことにより可能となる。
【0032】また、見出し情報は、見出し項目の集合を
有し、該見出し項目の集合中の見出し項目として見出し
項目の集合を記述可能に構成することにより、見出し項
目の一つとして記述された見出し項目の集合の各要素を
その見出し項目と置き換えて得られる見出し項目の集合
のそれぞれに、一括して、式または値を対応づけること
が可能となる。例えば、見出し項目a,b1 ,b2 ,c
1 ,c2 があり、b1とb2 ,c1 とc2 がそれぞれ見
出し項目の集合B,Cを構成する場合、見出し項目の集
合B,Cを用いて見出し項目の集合 <A,B,C> に式または値を対応させることにより、 <a,b1 ,c1 > <a,b1 ,c2 > <a,b2 ,c1 > <a,b2 ,c2 > に一括して同一の式または値を対応させることができ
る。また、見出し情報を階層的に表現することが可能と
なる。
【0033】さらに、見出し情報は、見出し項目の集合
を与えられて真偽値を返す述語により記述され、見出し
項目の集合が与えられたとき、述語が真となる場合に、
述語に対応する式または値から、与えられた見出し項目
の集合と表データの組を生成するように構成することに
より、述語が成り立つ見出し項目の集合のそれぞれに、
一括して、式または値を対応づけることが可能となる。
【0034】
【実施例】図1は、本発明の表情報処理装置の一実施例
を示すブロック図である。図中、1は入力手段、2は組
生成手段、3は記憶手段、4は利用手段である。入力手
段1は、表の見出し情報となり得る見出し情報および組
生成手段2が参照する式や値等の入力データを入力する
ためのものである。入力手段1は、例えば、キーボード
等の入力機器や、ワークステーション等で構成されても
よいし、通信回線を通じて入力データを受け取る構成で
あってもよい。さらに、例えば、ディスクやメモリ等に
記憶されているデータを読み出す構成としてもよい。入
力データの形式は、例えば、後述する見出し情報および
式の形式でもよいし、別の形式でもよい。入力手段1に
入力されたデータは、必要な場合には、記憶手段3に記
憶させるデータ形式に変換し、結果を記憶手段3に記憶
させる。
【0035】記憶手段3は、見出し情報および式を対応
させて記憶することにより、構造化された表の情報を保
持する。以下の説明では、記憶手段3は、値も式として
記憶している。また、見出し項目の集合は、見出し項目
の列として記憶している。
【0036】組生成手段2は、記憶手段3に記憶されて
いる見出し情報と式をもとに、式を計算し、見出し項目
列と表データの組を生成する。
【0037】利用手段4は、組生成手段2が生成する見
出し項目列と表データの組を用いて処理を行なう任意の
処理手段により構成することができる。例えば、上述の
特願平5−52936号に記載された表生成装置を用い
ることができる。この場合、見出し項目列と表データを
入力とし、適当なパラメータを指定することによって、
表のレイアウトを自動的に行ない、所望の表を生成する
ことができる。指定すべきパラメータを、適当な手段で
あらかじめ与えておくことにより、完全に自動化された
表の生成も可能である。
【0038】図10は、記憶手段3に記憶される見出し
情報および式の一例の説明図、図11は、組生成手段2
により生成される見出し情報と表データの組の一例の説
明図、図12は、利用手段4により作成される表の一例
の説明図である。見出し情報として、図10に示すよう
な見出し項目列と式の対応を記憶手段3に記憶させてお
く。図10では、「→」の左辺が見出し項目列、右辺が
対応する式を示している。例えば、見出し項目「馬」、
「個体数」からなる見出し項目列「<馬,個体数>」
と、式「2」が対応しており、見出し項目「馬」、「足
の総数」からなる見出し項目列「<馬,足の総数>」
と、式「<馬,個体数>*4」が対応している。
【0039】組生成手段2は、記憶手段3に記憶されて
いる見出し項目列と式の対応のそれぞれについて、式か
ら表データを計算し、見出し項目列と表データの組を生
成して利用手段4に引き渡す。式中に見出し項目列が存
在する場合には、記憶手段3からその見出し項目列と対
応づけられた式を探し、その式を計算した結果によって
式中の見出し項目列を置き換える。式中の全ての見出し
項目列を置き換えた後、式全体に対して通常の計算を施
し、表データを生成する。例えば、見出し項目列と式の
対応「<馬,足の総数>→<馬,個体数>*4」では、
式「<馬,個体数>*4」中の見出し項目列「<馬,個
体数>」を記憶手段3から探し、対応する式「2」を得
て、この式の計算結果「2」で「<馬,個体数>」を置
き換える。式「<馬,個体数>*4」は「2*4」とな
り、通常の計算を行なうことで表データ「8」が得られ
る。そして、もとの見出し項目列と、得られた表データ
により、組「<馬,足の総数>→8」を生成し、利用手
段4に引き渡す。組生成手段2が生成する見出し項目列
と表データの組は、全体として、図11に示すとおりに
なる。これを利用手段4に渡し、必要なパラメータを指
定することで、例えば、図13に示す表が得られる。ま
た、パラメータを変更することで、多様なレイアウトの
表を生成することができる。
【0040】このような本発明の表情報処理装置の一実
施例によれば、見出し項目の集合と表データが対応する
形の表論理構造を生成でき、かつ、その表データは、記
述された式の計算結果である。例えば、特願平5−52
936号に記載された表生成装置を利用手段4として用
いることにより、見出し項目の集合と表データが対応す
る形の表論理構造から、様々なレイアウトが自動的に生
成できる。このとき、生成する表が式によって記述され
た表データを持つ場合であっても、式の内容を変更する
ことなく、様々なレイアウトで自動的に生成することが
できるようになる。
【0041】図13、図14は、記憶手段3に記憶され
る見出し情報および式の別の例の説明図であり、図13
はグループの定義を、図14はグループを用いた見出し
情報と式の対応を示している。図14に示す例では、式
中に、見出し項目列を渡されて各見出し項目を返す関数
が現れる。この例における関数は、見出し項目のグルー
プに基づいて定義される。例えば、見出し項目列「<
馬,足の総数>」に対応する式「<#ほ乳類,個体数>
*4」において、「#ほ乳類」は見出し項目のグループ
を示している。
【0042】1つあるいは複数の見出し項目で、グルー
プを構成することができる。このグループは、グループ
に属する各見出し項目に共通の上位の見出し項目とな
る。ただし、上位の見出し項目が、表の見出し項目欄に
必ずしも表示されるとは限らない。また、グループは、
他のグループの構成要素となりうる。このグループによ
り、見出し項目は階層的な関係を有することになる。
【0043】図10で示した見出し項目列と式の対応に
おいて、見出し項目列を構成する各見出し項目は、グル
ープのメンバになり得る。図13は、見出し項目のグル
ープの定義の1例を示している。例えば、グループ「ほ
乳類」はメンバ「馬」,「牛」から構成される。すなわ
ち、「ほ乳類」は見出し項目「馬」,「牛」の上位の見
出し項目として定義されている。逆に言えば、グループ
「ほ乳類」の下位に2つの見出し項目が階層的に関係づ
けられたことになる。これらグループは必要なだけ記述
すればよい。もちろん、メンバとしてグループを指定す
ることも可能である。
【0044】図14に示した例で用いている関数は、
「見出し項目」あるいは「#グループ」の列で記述され
る。「<#ほ乳類,個体数>」は、関数記述の1例であ
る。この関数は、入力として見出し項目あるいはグルー
プの列が与えられると、入力の見出し項目あるいはグル
ープの列から、「#グループ」で示されるグループに属
する見出し項目を拾い出し、関数記述中の「#グルー
プ」の項を拾い出した見出し項目で置き換えて、出力と
なる見出し項目列を生成する。入力の見出し項目あるい
はグループの列中に、「#グループ」で示されるグルー
プに属する見出し項目が存在しない場合には、見出し項
目列を生成しないでNULL値を出力する。図14に示
した例では、関数「<#ほ乳類,個体数>」は、例え
ば、見出し項目列「<馬,足の総数>」が与えられる
と、グループ「ほ乳類」のメンバで、かつ、与えられた
見出し項目列中に存在する項目「馬」によって関数記述
中の「#ほ乳類」を置き換えることにより、出力となる
見出し項目列「<馬,個体数>」を生成する。式中にこ
のような関数が現れる場合、式を計算する際には、まず
関数の部分を関数の出力結果である見出し項目列で置き
換える。このとき、関数の入力として、見出し情報中で
式と対応づけられた見出し項目列が用いられる。
【0045】図15は、本発明の表情報処理装置の一実
施例において式の中に見出し項目列を処理する関数が現
れる場合の組生成手段2の動作の一例を示すフローチャ
ートである。まず、S21において、記憶手段3に未処
理の見出し項目列と式の対応が存在するか否かを判定す
る。もし、未処理の見出し項目列と式の対応が存在しな
ければ終了する。S22において、記憶手段3より、未
処理の見出し項目列と式の対応の一つを取り出す。
【0046】S23乃至S25は、式中の「#グループ
名」の処理である。S23において、式中に未処理の
「#グループ名」があるかを判定し、なければS26へ
進む。「#グループ名」がある場合、S24で見出し項
目列中にグループに属する見出し項目が存在するかを判
定し、なければそのグループを処理済みとしてS23へ
戻る。見出し項目列中にそのグループに属する見出し項
目が存在する場合には、S25において、式中の同じ
「#グループ名」の全てをその見出し項目で置き換え
る。S23へ戻り、他の「#グループ名」の処理を行な
う。
【0047】S26乃至S29は、式中の<見出し項目
1,...,見出し項目n>で表わされた見出し項目列
による参照の処理である。S26において、式中に未処
理の<見出し項目1,・・・,見出し項目n>という項
が存在するか否かを判定する。存在しなければ、S30
へ進む。S27において、記憶手段3に<見出し項目
1,・・・,見出し項目n>と式の対応が存在するか否
かを判定する。この対応が存在する場合、S28におい
て、この対応に対して図15に示すアルゴリズムを再帰
的に施した結果によって、<見出し項目1,・・・,見
出し項目n>の部分を置き換え、S26へ戻る。<見出
し項目1,・・・,見出し項目n>と式の対応が存在し
ない場合には、S29において、NA(Non−Ava
ilable)で、<見出し項目1,・・・,見出し項
目n>を置き換え、S26へ戻る。S26では、NAが
現われた時点で、他の未処理の<見出し項目1,・・
・,見出し項目n>に対する置き換え処理を中止し、あ
るいは、未処理の<見出し項目1,・・・,見出し項目
n>を全てNAで置き換え、S30へ進むように構成す
ることもできる。
【0048】S30において、さらに四則演算等、通常
の演算を行なう。演算の対象となるデータ中にNAが含
まれる場合、その演算結果もNAとする。全体の演算の
結果を表データとし、S22で得た見出し項目列と対応
させ、見出し項目列と表データの組を生成して、利用手
段4に引き渡す。これにより、1つの見出し項目列と式
との対応に関する処理が終了する。再びS21へ戻り、
他の未処理の見出し項目列と式との対応について、処理
を繰り返す。
【0049】上述の処理を、図13、図14に示した例
をもとに、図15に示したフローチャートに基づいて具
体的に説明する。始めに、記憶手段3に図14に示すよ
うな見出し項目情報と式が記憶されているものとする。
【0050】まず、S21において、記憶手段3中の未
処理の見出し項目列を探す。見出し項目列「<馬,足の
総数>」は、未処理なので、「<馬,足の総数>→<#
ほ乳類,個体数>*4」について処理を行なうことと
し、S22においてこれを取り出す。S23において、
この見出し項目列と式の対応の式中に「#ほ乳類」があ
ることが判断され、S24において、与えられた見出し
項目列「<馬,足の総数>」中にグループ「ほ乳類」に
含まれる見出し項目があるかを判断する。見出し項目
「馬」がグループ「ほ乳類」に含まれるので、S25に
おいて、式中の「#ほ乳類」を「馬」で置き換える。こ
の処理により、式は「<馬,個体数>*4」となる。以
上で全ての「#グループ名」が置き換わった。S23で
未処理の「#グループ名」が存在しないことが確認さ
れ、S26へ進む。
【0051】S26において、式中に「<馬,個体数
>」が存在することが判定され、S27において、記憶
手段3中から見出し項目列「<馬,個体数>」と式との
対応が存在することが判定された後、S28において、
見出し項目列「<馬,個体数>」に対応する式が取り出
される。対応する式は「2」であるので、そのまま「<
馬,個体数>」を「2」で置き換える。以上で全ての
「<...>」の部分が置き換わった。式は「2*4」
となる。
【0052】S30において、式「2*4」に対して四
則演算を行なった結果、「8」を得る。よって、見出し
項目列「<馬,足の総数>」と、表データ「8」の組を
生成し、利用手段4に出力する。S21に戻り、他の未
処理の見出し項目列に対して処理を行なう。これ以降は
同様の手順なので説明は省略する。以上の処理を全ての
式について行なった結果、図11に示した見出し項目列
と表データの組が生成される。また、生成された見出し
項目列と表データの組に基づき、利用手段4は図12に
示すような表や、他のレイアウトの表を生成することが
できる。
【0053】上述の例では、グループの定義とそれに基
づく関数(<...,#グループ名,...>)につい
て述べた。しかし、これに限らず、例えば、「#グルー
プ名」の部分に見出し項目列を記述したり、見出し項目
列を生成する関数を記述することもできる。一般に、関
数がグループに基づいている必要はなく、見出し項目列
を入力として、見出し項目列またはNULL値を出力す
るものであればよい。このとき、見出し情報中の見出し
項目列に対応する式が評価される際には、式中の個々の
関数に対して、式と対応している見出し項目列を入力と
して、出力となる見出し項目列を計算する。そして、式
中の関数を、得られた出力見出し項目列で置き換える。
この操作を式中の全ての関数に対して行なうことによ
り、関数を含まない式を得ることができる。以後、置き
換えられた式を計算すればよい。1つでも関数がNUL
L値を出力したときは、式を無効とし、評価しない。
【0054】式中に関数を記述することにより、関数を
使わない場合には記述が異なっていた式を、全く同じに
書くことができる。例えば、図10に示した例では、 <馬,足の総数>→<馬,個体数>*4 <牛,足の総数>→<牛,個体数>*4 と書いていたが、図14では、 <馬,足の総数>→<#ほ乳類,個体数>*4 <牛,足の総数>→<#ほ乳類,個体数>*4 と記述することができる。このように、「→」の右側の
式は全く同じに記述することができる。したがって、例
えば、入力手段にコピー・アンド・ペーストの機構が備
わっていれば、それを使うことで入力の手間を減らすこ
とができる。
【0055】また、式の実体を一箇所に記述し、実体を
指し示すポインタを見出し項目集合に対応付けることに
より、式を共有させることが可能となる。このことによ
り、同一の式の一元管理が可能になる。つまり、共有さ
れている式を変更すると、変更された式を共有している
複数の見出し項目集合に対して編集結果が自動的に波及
し、複数の見出し項目集合に対応する式の複数の変更が
なされたことになる。よって、式を変更する手間が大い
に削減される。
【0056】図16は、記憶手段3に記憶される見出し
情報および式のさらに別の例の説明図である。この例で
は、見出し情報として見出し項目列から式を指し示すポ
インタを有する構成としている。このような構成とする
ことにより、式を共有させることが可能となる。すなわ
ち、各見出し項目列は式を指し示すポインタを有し、こ
のポインタにより、対応する式との対応関係を表わす。
すると、図16に示すように、共有する式に対しては、
複数の見出し項目列からポインタが指し示されることに
なる。このことにより、式の一元管理が可能になる。ま
た、入力する式の数が減少し、利用者の入力の手間を減
らすとともに、記憶手段3における記憶領域を減少させ
ることができる。さらに、図16に示すように、見出し
項目列を処理する関数を併用することにより、入力の手
間はさらに減少する。
【0057】図17は、記憶手段3に記憶される見出し
情報および式のさらに別の例の説明図である。図17で
は、述語を用いた例を示している。ここで用いる述語
は、見出し項目列が入力されると「真」または「偽」の
真偽値を返すものである。見出し情報中に登録された述
語と式との対応を用いることにより、ある見出し項目列
が与えられると、それに対応する式を見つけることがで
きる。すなわち、見出し情報中の述語と式の対応に対
し、見出し項目列が与えられたとき、与えられた見出し
項目列が述語を真とする場合に、述語に対応づけられた
式が見出し項目列と対応づけられるものとする。そし
て、この式を評価して、結果を見出し項目列に対応する
表データとする。
【0058】図17に示した例では、式と対応する見出
し項目列中の見出し項目の一つとしてグループが記述さ
れ、そのグループは、他のいくつかの見出し項目をメン
バとするという、包含関係を利用した述語を用いてい
る。このグループを利用して、「#グループ名」と「見
出し項目」からなる列を次のような述語とみなす。すな
わち、述語の要素である「#グループ名」を、そのグル
ープのメンバである適当な見出し項目で置き換えて得ら
れる見出し項目列が、述語に対して与えられた見出し項
目列に一致するならば真、そうでなければ偽という値を
とる。
【0059】例えば、図17に示すように、見出し情報
中に述語と式の対応 <#ほ乳類,足の総数>→<#ほ乳類,個体数>*4 があるとき、見出し項目列<馬,足の総数>が与えられ
ると、述語中の「#ほ乳類」を、見出し項目列中のグル
ープ「ほ乳類」の要素である見出し項目「馬」で置き換
えると、置き換えられた述語は与えられた見出し項目列
と一致する。すなわち、見出し項目列<馬,足の総数>
は、述語<#ほ乳類,足の総数>を真とする。したがっ
て、見出し項目列<馬,足の総数>と式<#ほ乳類,個
体数>*4が対応し、式が評価される。一方、見出し項
目列<蟻,足の総数>が与えられた場合には述語が偽に
なるため、この式は評価されない。しかし、図17に示
した述語<#昆虫類,足の総数>が真となるので、対応
する式<#昆虫類,個体数>*6が評価される。
【0060】図18は、本発明の表情報処理装置の一実
施例において述語に対して式を対応づけた場合の組生成
手段2の動作の一例を示すフローチャートである。S4
1において、記憶手段3に未処理の述語と式の対応が存
在するか否かを判定し、存在しなければ終了する。存在
する場合には、S42において、記憶手段3より、未処
理の述語と式の対応を1つ取り出す。S43において、
述語の中の各「#グループ名」をそのグループの適当な
メンバで置き換えることにより、これまで得られていな
い見出し項目列が得られるか否かを判定する。得られな
い場合にはその述語は処理済みであるとして、S41へ
戻る。S43において新たな見出し項目列が得られると
判断される場合には、S44において、述語の中の各
「#グループ名」をそのグループの適当なメンバで置き
換えることにより、これまで得られていない見出し項目
列を得る。
【0061】S45乃至S47は、対応する式中に存在
する「#グループ名」の処理である。S45において、
対応する式中に未処理の「#グループ名」があるか否か
を判定し、なければS48へ進む。「#グループ名」が
ある場合、S46において、S44で得られた見出し項
目列中に「グループ」に属する見出し項目が存在するか
否かをさらに判定し、なければS45へ戻る。存在する
場合には、S47において、式中の全ての「#グループ
名」をその見出し項目で置き換え、S45へ戻る。
【0062】S48乃至S51は、式中の関数<見出し
項目1,・・・,見出し項目n>の処理である。S48
において、式中に未処理の<見出し項目1,・・・,見
出し項目n>という項が存在するか否かを判定し、なけ
ればS52へ進む。存在する場合には、S49におい
て、記憶手段3に<見出し項目1,・・・,見出し項目
n>と式の対応が存在するか否かを判定し、存在する場
合には、S50において、存在した見出し項目列と式の
対応に対して、図18に示したアルゴリズムを再帰的に
施す。その結果、得られた値により、<見出し項目1,
・・・,見出し項目n>を置き換える。そして、S48
へ戻る。S49において、記憶手段3中に<見出し項目
1,・・・,見出し項目n>という見出し項目列が存在
しない場合、NA(Non−Available)で、
<見出し項目1,・・・見出し項目n>を置き換え、S
48へ戻る。S48では、NAが現われた時点で、他の
未処理の<見出し項目1,・・・,見出し項目n>に対
する置き換え処理を中止し、あるいは全てNAで置き換
え、S52へ進むように構成することもできる。
【0063】S52において、さらに四則演算等、通常
の演算を行なう。演算の対象となるデータ中にNAが含
まれる場合、その演算結果もNAとする。全体の演算の
結果を表データとして、S44で得た見出し項目列との
対応をとり、見出し項目列と表データの組を生成し、利
用手段4に引き渡す。S43へ戻り、他のメンバによる
新たな見出し項目列の生成処理を繰り返す。
【0064】上述の処理を、図17に示した例をもと
に、図18に示したフローチャートに基づいて具体的に
説明する。始めに、記憶手段3には、図17に示すよう
な見出し項目情報と式、および、グループ定義が記憶さ
れているものとする。まず、S41において、記憶手段
3中の未処理の述語を探す。述語<#ほ乳類,足の総数
>は未処理なので、S42において、 <#ほ乳類,足の総数>→<#ほ乳類,個体数>*4 について処理を行なうこととする。
【0065】S43において、述語の「#ほ乳類」をそ
のメンバ「馬」で置き換えると、これまで得られていな
い見出し項目列<馬,足の総数>が得られることがわか
るので、S44においてその見出し項目列を得る。
【0066】S45において、式中に「#ほ乳類」があ
り、また、S46において、S44で得られた見出し項
目列中にグループ「ほ乳類」に含まれる見出し項目
「馬」があるので、S47において、式中の「#ほ乳
類」を「馬」で置き換える。以上で全ての「#グループ
名」が置き換わった。式は「<馬,個体数>*4」とな
る。
【0067】S48において、式中に「<馬,個体数
>」が存在するので、S49において、記憶手段3中か
ら「<馬,個体数>」に対応する式を探し出す。対応す
る式は「2」であるので、S50において、そのまま
「<馬,個体数>」を「2」で置き換える。以上で全て
の<見出し項目1,・・・,見出し項目n>の部分が置
き換わった。式は「2*4」となる。
【0068】S52において、四則演算を行なった結
果、「8」となる。よって、見出し項目列「<馬,足の
総数>」と表データ「8」の組を生成し、利用手段4に
出力する。
【0069】S43に戻り、述語の「#ほ乳類」をその
メンバ「牛」で置き換えると、これまで得られていない
見出し項目列<牛,足の総数>が得られる。以降、述語
<#ほ乳類,足の総数>を<牛,足の総数>と置き換え
て処理を行なう。見出し項目列<牛,足の総数>につい
ての処理が終了し、S43に戻ると、述語の「#ほ乳
類」をそのメンバで置き換えても、新たな見出し項目列
は得られない。そのため、S41へ戻る。記憶手段3中
には未処理の述語「#鳥類」が存在するので、この述語
に対して処理を行なう。これ以降は同様の手順なので説
明は省略する。
【0070】以上を全ての式について行なった結果、生
成される見出し項目列と表データの組は、図11に示し
た通りであり、これらのデータが利用手段4に渡され、
レイアウトされることにより、例えば、図13に示すよ
うな表が作成される。
【0071】図17と図13、図14を比べれば分かる
ように、述語は複数の見出し項目列を代表する表現とな
っている。このように、述語を用いることにより、個別
の見出し項目集合に対して式を対応づける必要がなくな
る。これにより、入力が簡便になるとともに、記憶手段
3に記憶すべき情報の量をさらに減らすことが可能とな
る。すなわち、表データを対応させるべき見出し項目の
列をあらかじめ見出し情報中に登録しておく必要はな
い。見出し情報中の見出し項目をもとに見出し項目列を
生成し、生成された見出し項目列が述語を真にする場合
に、述語と対応づけられた式の評価値と見出し項目列の
対応を作り出せばよい。また、見出し情報中の見出し項
目とグループの包含関係において、述語中の「#グルー
プ」で示されるグループのメンバとして新たに見出し項
目をつけ加えると、付け加えられた見出し項目を含む新
たな見出し項目はこの述語を真にするので、新たな見出
し項目列と表データの対応が自動的に得られる。さら
に、述語と対応づけられた式を変更すれば、述語が代表
する全ての見出し項目と対応付けられる表データが、変
更された式に基づいて評価されることになる。
【0072】なお、図17でも用いているように、見出
し項目列に対応する式中にグループ名を用いるなど、見
出し項目列を処理する関数を用いたり、図16に示した
ように、見出し情報として見出し項目列と式へのポイン
タを有するデータ構造を採用することも可能であり、上
述の各例を適宜組み合わせて用いることができる。
【0073】上例の述語の代わりに、見出し項目列を入
力とし、見出し項目列またはNULL値を返す関数と式
を対応付けてもよい。このときは、与えられた見出し項
目列を入力として、左辺の関数を評価する。評価値がN
ULL値のときは、右辺の式を評価しない。見出し項目
列が出力された場合は、右辺の式の評価を行ない、評価
値を出力見出し項目列に対応する表データとする。ま
た、上述の説明では、与えられた見出し項目列が述語に
適合するか否かを判定したが、見出し項目列と表データ
の組を生成する際に、グループ名の部分をそのグループ
の各メンバでそれぞれ置き換えた複数の見出し項目列を
全て生成するように構成することもできる。このとき、
生成された見出し項目列は、対応する式をポインタで指
し示す構成とすれば、対応する式まで新たに生成するこ
となく、効率よく処理を行なうことができる。
【0074】
【発明の効果】以上の説明から明らかなように、本発明
によれば、見出し項目の集合と表データが対応する形の
表論理構造を生成でき、レイアウトとは独立したデータ
構造により表計算を行なうことができるので、式によっ
て記述された表であっても、式の内容を変更することな
く、様々なレイアウトの表に対応することができる。
【0075】また、ポインタを用いた式の共有化や、式
中に見出し項目列を処理する関数を記述したり、見出し
項目列中の見出し項目に別の見出し項目列を記述し、ま
たは、見出し項目列として述語を用いることが可能な構
成では、入力が簡素化されるとともに、同一の式の一元
管理が可能になる。さらに、記憶手段の容量を削減する
ことができるという効果がある。
【図面の簡単な説明】
【図1】 本発明の表情報処理装置の一実施例を示すブ
ロック図である。
【図2】 従来の一般的な表計算ソフトウェアにおける
表示画面の一例の説明図である。
【図3】 従来の表計算ソフトウェアの別の例における
ワークシートの一例の説明図である。
【図4】 従来の表計算ソフトウェアの別の例における
表の変形例の説明図である。
【図5】 従来の表計算ソフトウェアの別の例における
グルーピングの一例の説明図である。
【図6】 従来の表計算ソフトウェアの別の例における
ソート後の表の一例の説明図である。
【図7】 レイアウトが自由に変更できる従来の装置に
おけるデータ構造の説明図である。
【図8】 図7に示したデータ構造から生成される表の
一例の説明図である。
【図9】 図7に示したデータ構造から生成される表の
別の例の説明図である。
【図10】 記憶手段3に記憶される見出し情報および
式の一例の説明図である。
【図11】 組生成手段2により生成される見出し情報
と表データの組の一例の説明図である。
【図12】 利用手段4により作成される表の一例の説
明図である。
【図13】 記憶手段3に記憶されるグループ定義の例
の説明図である。
【図14】 記憶手段3に記憶される見出し情報および
式のグループ定義を用いた例の説明図である。
【図15】 本発明の表情報処理装置の一実施例におい
て式の中に見出し項目列を処理する関数が現れる場合の
組生成手段2の動作の一例を示すフローチャートであ
る。
【図16】 記憶手段3に記憶される見出し情報および
式のポインタを用いた例の説明図である。
【図17】 記憶手段3に記憶される見出し情報および
式の述語を用いた例の説明図である。
【図18】 本発明の表情報処理装置の一実施例におい
て述語に対して式を対応づけた場合の組生成手段2の動
作の一例を示すフローチャートである。
【符号の説明】
1 入力手段、2 組生成手段、3 記憶手段、4 利
用手段、11〜16セル。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 表計算を行なう表情報処理装置におい
    て、表の見出しに関する見出し情報と表の内容を示す式
    または値との対応を記憶する記憶手段と、該記憶手段に
    記憶されている見出し情報及び式や値を参照して式の計
    算を行ない見出し情報と表データの組を生成する組生成
    手段を有することを特徴とする表情報処理装置。
  2. 【請求項2】 前記見出し情報は、見出し項目の集合と
    式または値を指し示すポインタを有し、該ポインタによ
    り見出し項目の集合と式または値を対応させることによ
    り、式または値の共有を可能としたことを特徴とする請
    求項1に記載の表情報処理装置。
  3. 【請求項3】 前記見出し情報と対応付けられる式中
    に、見出し項目の集合を処理する関数を記述可能に構成
    されていることを特徴とする請求項1または2に記載の
    表情報処理装置。
  4. 【請求項4】 前記見出し情報は、見出し項目の集合を
    有し、該見出し項目の集合中の見出し項目として見出し
    項目の集合を記述可能に構成されていることを特徴とす
    る請求項1,2または3に記載の表情報処理装置。
  5. 【請求項5】 前記見出し情報は、見出し項目の集合を
    与えられて真偽値を返す述語により記述され、見出し項
    目の集合が与えられたとき、述語が真となる場合に、述
    語に対応する式または値から、与えられた見出し項目の
    集合と表データの組を生成することを特徴とする請求項
    1乃至4の1つに記載の表情報処理装置。
JP5294210A 1993-10-30 1993-10-30 表情報処理装置 Pending JPH07129688A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5294210A JPH07129688A (ja) 1993-10-30 1993-10-30 表情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5294210A JPH07129688A (ja) 1993-10-30 1993-10-30 表情報処理装置

Publications (1)

Publication Number Publication Date
JPH07129688A true JPH07129688A (ja) 1995-05-19

Family

ID=17804758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5294210A Pending JPH07129688A (ja) 1993-10-30 1993-10-30 表情報処理装置

Country Status (1)

Country Link
JP (1) JPH07129688A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242587A (ja) * 2004-02-25 2005-09-08 Fuji Xerox Co Ltd クロス表作成のためのプログラム及び方法及び装置
JP2007149014A (ja) * 2005-11-30 2007-06-14 Just Syst Corp データ処理装置およびデータ処理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242587A (ja) * 2004-02-25 2005-09-08 Fuji Xerox Co Ltd クロス表作成のためのプログラム及び方法及び装置
JP4501459B2 (ja) * 2004-02-25 2010-07-14 富士ゼロックス株式会社 クロス表作成のためのプログラム及び方法及び装置
JP2007149014A (ja) * 2005-11-30 2007-06-14 Just Syst Corp データ処理装置およびデータ処理方法

Similar Documents

Publication Publication Date Title
US20210209157A1 (en) System and method for non-programmers to dynamically manage multiple sets of xml document data
US7251776B2 (en) System and method for efficiently and flexibly utilizing spreadsheet information
US5930806A (en) Method and system for data migration from network database to relational database
US7015911B2 (en) Computer-implemented system and method for report generation
CN108701254A (zh) 用于动态族系跟踪、重建和生命周期管理的系统和方法
US5809304A (en) Method of designing application-oriented program
JPH07129688A (ja) 表情報処理装置
Katz et al. A system for constructing linear programming models
JP4461111B2 (ja) バッチ系のシステム設計図自動生成方式
Zdonik Object management system concepts: Supporting integrated office workstation applications
Shentu et al. Mechanism design of data management system for nuclear power
JPS6320529A (ja) 知識獲得方式
Bârjovanu et al. Usage of Data Bases of Microsoft Office in the Perspective of National Economies for the Effect of Globalization.
JP2001273129A (ja) 構造化文書により定義された品質管理及び品質評価ルールによるソフトウェア品質管理・評価方法、ならびにそのプログラムを記録した記録媒体
Bettinger et al. Landscape management policy simulator (lamps): version 1.1: user guide
Gibson et al. Information Management System: Master links—a hierarchical data system
Tyszkiewicz The Power of Spreadsheet Computations
Polhill et al. Lessons learned replicating the analysis of outputs from a social simulation of biodiversity incentivisation
Maftei Resource management tool: modern application architecture with focus on database performance
Beulens Transforming algebraic datastructures into relational datastructures in DSS
van Hee et al. Executable specification for information systems
Kumar et al. Selection of Candidate Views for Big Data View Materialization
JPH07121637A (ja) 表計算装置
Harvick Rule Based Data Structure Animation
JPH064606A (ja) 設計支援システム