JP2007122638A - 情報処理装置、並びに、そのプログラムおよび記録媒体 - Google Patents
情報処理装置、並びに、そのプログラムおよび記録媒体 Download PDFInfo
- Publication number
- JP2007122638A JP2007122638A JP2005317333A JP2005317333A JP2007122638A JP 2007122638 A JP2007122638 A JP 2007122638A JP 2005317333 A JP2005317333 A JP 2005317333A JP 2005317333 A JP2005317333 A JP 2005317333A JP 2007122638 A JP2007122638 A JP 2007122638A
- Authority
- JP
- Japan
- Prior art keywords
- data
- processing unit
- unit
- cell
- lump
- 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
Links
- 238000012545 processing Methods 0.000 claims abstract description 235
- 238000000034 method Methods 0.000 claims abstract description 60
- 230000009466 transformation Effects 0.000 claims abstract description 14
- 238000006243 chemical reaction Methods 0.000 claims description 115
- 230000010365 information processing Effects 0.000 claims description 78
- 230000008569 process Effects 0.000 claims description 35
- 238000001914 filtration Methods 0.000 claims description 6
- 210000004027 cell Anatomy 0.000 description 195
- 238000004364 calculation method Methods 0.000 description 9
- 210000004460 N cell Anatomy 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000004148 unit process Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】1塊のセルが複数の行または列に配置されている表形式のデータを、塊単位で処理可能な情報処理装置を実現する。
【解決手段】表形式のデータのうち、その位置が変換対象の範囲に含まれ、しかも、上記塊に含まれるセルのデータ構造を解析して、1塊が1行になるように上記変換対象を変換する際の変換手順、および、その逆変換手順を特定するデータ構成解析部23と、上記表形式のデータの変換対象を塊毎に分割し、各塊を上記変換手順に従って変換すると共に、当該変換後の表形式のデータを、行を処理の単位とする操作を受け付け可能な編集処理部12へ出力する変換処理部24と、上記編集処理部12によって操作された表形式のデータの変換対象を行毎に分割すると共に、上記解析結果に基づき、各行を、それぞれ上記逆変換手順に従って上記塊に逆変換する復元処理部25とを備えている。
【選択図】図1
【解決手段】表形式のデータのうち、その位置が変換対象の範囲に含まれ、しかも、上記塊に含まれるセルのデータ構造を解析して、1塊が1行になるように上記変換対象を変換する際の変換手順、および、その逆変換手順を特定するデータ構成解析部23と、上記表形式のデータの変換対象を塊毎に分割し、各塊を上記変換手順に従って変換すると共に、当該変換後の表形式のデータを、行を処理の単位とする操作を受け付け可能な編集処理部12へ出力する変換処理部24と、上記編集処理部12によって操作された表形式のデータの変換対象を行毎に分割すると共に、上記解析結果に基づき、各行を、それぞれ上記逆変換手順に従って上記塊に逆変換する復元処理部25とを備えている。
【選択図】図1
Description
本発明は、表形式のデータを処理する情報処理装置、並びに、そのプログラムおよび記録媒体に関するものである。
従来から、例えば、表計算プログラムあるいは作表プログラムなどがインストールされたコンピュータなど、表形式のデータを処理する情報処理装置は、広く使われている。当該情報処理装置では、データベースなどとは異なって、データ構造を定義せずに、表の各セルに値を入力していくことができるため、比較的容易にデータを入力できる。また、上記情報処理装置の中には、行や列を単位として、ソートやフィルタなどの処理を実施可能なものも存在している。
これにより、例えば、図2に示すように、1塊のデータが1行に記述されていれば、例えば、図3に示すように、これらのデータをソートしたり、フィルタリング処理したりできる。なお、図2は、一例として、図2の表の各行を、列Aの値が小さい順にソートした状態を示している。
また、後述する特許文献1には、表とデータベースとの対応関係をGUI(グラフィカルユーザインターフェース)を用いて定義し、変換手続きを対応定義から自動生成する構成によって、プログラミングレスでデータベースエンジンから獲得したデータを表計算ソフトで使用する形式に変換を行うことが記載されている。
特開平7−296084号公報(公開日:1995年11月10日)
しかしながら、上記従来の構成では、1塊のデータが複数行に配置されている表の場合、その表に対して、行または列単位の処理を行うと、本来1塊であるべきデータが、互いに離れた位置の行に分散してしまうという問題を生じる。
具体的には、当該情報処理装置は、データ構造を定義せずに、表の各セルに値を入力することができるので、例えば、表を作成する際に、表が横に長くなるのを防止して表を見やすくするためなどの目的で、例えば、図4に示すように、1塊のデータが複数行に配置されたような表も、比較的容易に作成できる。
ところが、図4に示す表では、1塊のデータが複数行に配置されているため、当該表を、1行を単位としてソートすると、図5に示すように、1塊であるべきデータが、互いに離れた位置の行に分散してしまう。
なお、上記特許文献1には、上述したように、表とデータベースとの対応関係をGUI(グラフィカルユーザインターフェース)を用いて定義し、変換手続きを対応定義から自動生成する構成によって、プログラミングレスでデータベースエンジンから獲得したデータを表計算ソフトで使用する形式に変換を行うことが記載されているが、この構成を用いたとしても、上記問題を解決することはできない。
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を実施可能な情報処理装置を実現することにある。
本発明に係る情報処理装置は、上記課題を解決するために、表の行および列のうちの一方を処理単位とするとき、複数のセルからなる処理単位が複数設けられた表形式のデータを処理する情報処理装置において、予め定められる複数の処理単位を塊とするとき、上記表形式のデータのうち、その位置が変換対象の範囲に含まれ、しかも、上記塊に含まれるセルのデータ構造を解析して、1つの塊に含まれるセルが1つの処理単位に含まれるように上記変換対象を変換する際の変換手順、および、その逆変換を行う際の逆変換手順を特定すると共に、当該両手順を示す解析結果を記憶装置に記憶する解析手段と、上記解析手段による解析結果に基づいて、上記表形式のデータのうち、その位置が変換対象の範囲に含まれるセルを、上記塊毎に分割し、当該各塊を上記変換手順に従って変換することによって、1塊に含まれるセルが1処理単位に含まれるように上記変換対象を変換すると共に、当該変換後の表形式のデータを、上記処理単位を処理の単位とする操作を受け付け可能な情報処理部へ出力する変換手段と、上記情報処理部によって操作された表形式のデータのうち、その位置が変換対象の範囲に含まれるセルを、上記処理単位毎に分割すると共に、上記記憶装置に含まれた解析結果に基づき、当該分割された各処理単位を、それぞれ上記逆変換手順に従って上記塊に逆変換する復元手段とを備えていることを特徴としている。
当該構成に係る情報処理装置では、解析手段が、上記表形式のデータのうち、その位置が変換対象の範囲に含まれ、しかも、上記塊に含まれるセルのデータ構造を解析して、1つの塊に含まれるセルが1つの処理単位に含まれるように上記変換対象を変換する際の変換手順、および、その逆変換を行う際の逆変換手順を特定する。さらに、変換手段は、当該特定された変換手順で各塊を変換する。これにより、上記変換対象は、1塊に含まれるセルが1処理単位に含まれるように変換される。
これにより、上記情報処理部が上記変換後の表形式のデータを処理することによって、上記情報処理部が、上記塊を単位としては行うことができないような処理であっても、行または列の一方である処理単位毎に処理できるものであれば、1塊に含まれるデータが分散されることなく、処理を行うことができる。
一例として、上記処理単位が行であり、上記処理がソートである場合について説明すると、1塊となるセルが複数行に配されている場合、各塊に対して、行単位のソートを行うと、ソートによって、ある塊に含まれるセルが、互いに離れた行に配置される虞れがある。これに対して、変換手段が1塊を1行に変換した後であれば、行を単位とするソートを行ったとしても、ある塊に含まれるセルは、常に1つの行に含まれたままである。
さらに、上記情報処理部によって操作された表形式のデータのうち、その位置が変換対象の範囲に含まれるセルは、復元手段によって、上記処理単位毎に分割される。また、当該分割された各処理単位は、それぞれ上記逆変換手順に従って上記塊に逆変換される。これにより、1塊のセルは、変換手段によって変換される前と同様に、複数の処理単位に配置される。
ここで、復元手段によって復元された表形式のデータは、変換手段によって各塊を1処理単位ずつに変換した後、処理単位を単位とした処理を行い、さらに、処理後の各処理単位を1塊ずつに戻すことによって生成されている。したがって、復元された表形式のデータは、変換手段による変換前の表形式のデータに対して、塊を単位として上記処理を行ったものになっている。
この結果、上記情報処理部が塊を単位とした処理を行うことができず、処理単位を単位とした処理しか行うことができない場合であっても、情報処理装置は、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を行うことができる。
さらに、上記構成に加えて、上記表形式のデータの上記各塊のうち、各セルのタイトルが入力されている塊の指定を受け付け、当該塊の解析を上記解析手段へ指示する受付手段を備えていてもよい。
当該構成では、情報処理装置は、各セルのタイトルが入力されている塊の指定を受け付け、当該塊の解析を上記解析手段へ指示する。したがって、各セルのタイトルが入力されている処理単位の数だけの処理単位を1塊として、例えば、ソートなどの処理を行うことができる。さらに、各セルのタイトルが入力されている塊を指定するので、ユーザが指定しやすい。
また、上記構成に加えて、上記表形式のデータには、表が複数のページに渡って表示または印刷される場合に、各ページの先頭となる処理単位の前に予め定められた複数の処理単位のセルの内容を表示または印刷するように、上記情報処理部へ指示するページ設定データが含まれており、上記解析手段は、当該ページ設定データによって指定された上記複数の処理単位を、上記1塊として解析してもよい。当該構成では、1塊を指定する操作を、ページ設定データを設定する操作で兼ねることができるので、1塊を指定する際の手間を削減できる。
さらに、上記構成に加えて、上記表形式のデータのうち、その位置が変換対象の範囲に含まれるセルのフォーマットを解析し、あるフォーマットが、複数の処理単位毎に繰り返されているか否かを判定し、繰り返されている場合、当該フォーマットが繰り返されている処理単位の数からなる処理単位を、1塊として、当該塊の解析を、上記解析手段へ指示する塊推定手段を備えていてもよい。
当該構成では、塊推定手段がフォーマットを解析して1塊を推定するので、1塊を指定する手間を削減できる。
一方、本発明に係る情報処理装置は、上記課題を解決するために、表の行および列のうちの一方を処理単位とするとき、複数のセルからなる処理単位が複数設けられた表形式のデータを処理する情報処理装置において、予め定められる複数の処理単位を塊とするとき、1塊となる範囲の指定を受け付ける受付手段と、当該塊を単位として、上記表形式のデータを処理するデータ処理手段とを備えていることを特徴としている。また、上記構成に加えて、上記塊を単位とする処理は、ソート処理、フィルタリング処理、および、各塊を1処理単位ずつに変換する処理の少なくとも1つであってもよい。
ところで、例えば、表を作成する際に、横または縦に長くなることを防止し、表を見やすくするために、1塊となるセルを、複数の処理単位に配置することがある。ここで、いずれの数の処理単位に、1塊となるセルを配置するかは、表の見みやすさなどに左右されるため、表形式のデータ毎に互いに異なっている可能性があり、情報処理装置の製造者が予め設定しておくことは難しい。
ところが、上記構成では、受付手段が1塊となる範囲の指定を受け付けると、データ処理手段は、当該塊を単位として、上記表形式のデータを処理する。したがって、いずれの数の処理単位に、1塊となるセルが配置されていたとしても、データ処理手段は、その表形式のデータに合った単位で、例えば、ソート、フィルタリング、あるいは、各塊を1処理単位ずつに変換する処理などの処理を行うことができる。これにより、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を行うことができる。
ところで、上記情報処理装置は、ハードウェアで実現してもよいし、プログラムをコンピュータに実行させることによって実現してもよい。具体的には、本発明に係るプログラムは、上記情報処理装置のいずれかの各手段として、コンピュータを動作させるプログラムであり、本発明に係る記録媒体には、当該プログラムが記録されている。
これらのプログラムがコンピュータによって実行されると、当該コンピュータは、上記情報処理装置として動作する。したがって、上記情報処理装置と同様に、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を行うことができる。
本発明に係る情報処理装置は、変換手段が、変換対象を、複数の行または列からなる1塊に含まれるセルが1行または1列に含まれるように変換して、当該行または列を処理の単位とする操作を受け付け可能な情報処理部に出力すると共に、復元手段が、情報処理部によって処理された表形式のデータにおいて、1行または1列を塊に逆変換する。したがって、情報処理装置は、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を行うことができる。
また、本発明に係る情報処理装置は、受付手段が1塊となる範囲の指定を受け付けると、データ処理手段は、当該塊を単位として、上記表形式のデータを処理するので、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を行うことができる。
〔第1の実施形態〕
本発明の一実施形態について図1ないし図13に基づいて説明すると以下の通りである。すなわち、本実施形態に係る情報処理装置1は、1塊のセルが複数の行または列に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした、ソートなどの処理を実施可能な情報処理装置である。
本発明の一実施形態について図1ないし図13に基づいて説明すると以下の通りである。すなわち、本実施形態に係る情報処理装置1は、1塊のセルが複数の行または列に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした、ソートなどの処理を実施可能な情報処理装置である。
なお、当該情報処理装置は、例えば、表計算アプリケーションプログラムまたは作表アプリケーションプログラムなど、表形式のデータを処理するアプリケーションプログラムがインストールされた汎用のコンピュータ(例えば、パーソナルコンピュータなど)であってもよい。また、表形式のデータを処理できるものであれば、例えば、制御システムにおいてHMI(Human Machine Interface )として使用される制御用表示装置(例えば、プログラマブル表示器など)をはじめとして、種々の情報処理装置に広く適用できる。
具体的には、本実施形態に係る情報処理装置1は、図1に示すように、表形式のデータ(表形式データ)を記憶する表形式データ記憶部11と、当該表形式データ記憶部11に記憶された表形式データを、図示しない表示装置の表示画面上に表形式で表示すると共に、ユーザから受け付けた操作に応じて、上記表形式データ記憶部11に格納された表形式データを更新する編集処理部(情報処理部;データ処理手段)12とを備えている。
上記編集処理部12は、例えば、表計算アプリケーションのソフトウェアを情報処理装置1の図示しないプロセッサが実行し、それにより、当該プロセッサが、図示しない記憶装置(HDDやメインメモリなど)、および、周辺機器(表示装置や入力装置など)を制御することによって実現されている。
一方、上記表形式データには、表に含まれる各セルのデータが含まれている。これら各セルのデータは、表における位置(座標)、すなわち、そのセルが属している行と列との組み合わせに対応して記憶されており、上記編集処理部12は、例えば、図2に示すように、各セルの内容を、それぞれの表における位置に従い、表形式で表示できる。なお、図2では、一例として、表形式データが5列×10行の表を示しており、その表全体を表示している場合を例示しているが、当然ながら、表の列数および行数は、これに限るものではなく、また、表の一部のみを表示してもよい。また、図2の例では、編集処理部12は、表を表示する際、各列と共に、その列を示す文字列(図の例では、A〜E)を表示し、各行と共に、その行を示す文字列(図の例では、1〜10)を表示している。なお、以下では、各セルを特定する必要がある場合、例えば、図2に示すセルB2のように、列を示す文字列(この場合はB)と、行を示す文字列(この場合は、2)との組み合わせて記載する。
さらに、上記編集処理部12は、表を構成する各セルへの入力/編集操作を受け付けることができる。また、上記編集処理部12は、セルへの入力/編集操作として、各セルの値の入力/編集操作を受け付けることができるだけではなく、セルに対する式の入力操作を受け付けることもでき、当該セルの値として、受け付けた式の評価結果(演算結果)を表示することもできる。ここで、上記式には、式が入力されるセルを基準とした、絶対または相対的な座標指定によって、他のセルを記述することができる。
また、上記編集処理部12は、行または列を単位とした編集操作として、例えば、ソートおよびフィルタリング操作などの操作を受け付けることができる。また、編集処理部12は、表計算機能の一部として、平均計算操作、および、合計計算操作などの操作を受け付けることもできる。
一例として、編集処理部12は、図2に示す表のうち、行4〜行8に対して、列Cをキーとした逆順のソートの指示を受け付けると、図3に示すように、各行を列Cの値が小さい順に並び替える(ソートする)ことができる。
さらに、上記編集処理部12は、各セルに対する書式の設定操作を受け付けることができる。書式形式としては、例えば、そのセルの内容を表示する際の表示形式(数値をどのようにフォーマットするかなど)、そのセルの内容を表示する際のフォントまたは色、そのセルの内容を表示する際の配置、背景色またはパターン、罫線、あるいは、そのセルを保護するか否かなどが挙げられる。図2および図3の例では、タイトルとなる行(図の例では、行3)の各セルのフォントが、太字に設定されている。また、表の外枠となるセルには、表の外枠となる位置に太い罫線が設定されていおり、タイトルとなる行(タイトル行)の各セルには、さらに、各セルの下に太い罫線が設定されている。さらに、各セルには、それ以外の位置に細い罫線が設定されている。
ここで、編集処理部12は、各セルに対して、入力可能な値を設定することもできるが、特に設定しない限り、各セルへの任意の値または式の入力/編集操作を受け付けることができる。例えば、図2の例では、タイトル行(行3)には、それ以外の行に入れられるべきデータの名称を示す文字列が記入されているのに対して、それ以外の行(行4〜8)には、データの内容を示す数値や文字列が入力されている。
したがって、データベースソフトのように、データのデータ構造を予め定義した後で、各データを入力する構成よりも容易に表形式のデータを入力することができ、比較的容易に、表の項目を増減したり、一部のみが他の部分とデータ構造の異なる表を作成したりできる。
一部のみが他の部分とデータ構造の異なる表としては、例えば、図4に示すように、複数の行を1塊とするような表が挙げられる。なお、図4では、行単位で見ると、行2では、各列B〜Dに”名前”、”年齢”および”住所”が設定されているのに対して、行3では、列Cに”性別”が設定されているだけなので、行2および行3は、互いにデータ構造が異なっている。
ただし、図4の表では、2行を単位として見ると、互いに同じデータ構造を持ったデータが繰り返されている。なお、このような表は、表が横に長くなって見にくくなることを防止するためなどの理由で作成されることが多い。
さらに、本実施形態に係る編集処理部12は、表の各セルに対する結合指示を受け付けることができる。複数のセルが結合されると、編集処理部12は、例えば、図4に示すセルB2およびB3のように、これらのセルを1つのセル(セルB2)として扱う。具体的には、編集処理部12は、これらのセルの表示領域全てを1つのセルと見なし、当該表示領域に対して、1つの値または式の入力しか受け付けない。さらに、編集処理部12は、当該値を表示する際、当該表示領域内に値を表示する。図の例では、当該セルの書式設定として、内容を真ん中に表示するように設定されており、編集処理部12は、表示領域の真ん中に、セルの内容を表示している。なお、編集処理部12は、表示領域に対して書式設定が指示された場合、上記結合された1つのセルの書式を設定する。なお、当該結合された1つのセルは、結合前のいずれのセルであってもよいが、本実施形態に係る編集処理部12は、一例として、結合前の左上のセル(図の例では、B2)を上記結合された1つのセルとしている。
これにより、図4に示すように、複数行を1塊とするデータを表示する際に、表示領域を有効利用できる。図4の例では、年齢および性別のセル(C列の各セル)は、他のセルと結合されていないのに対して、名前および住所のセル(B列およびD列のセルのうち、偶数行のセル)は、次の行のセルと連結されている。これにより、名前および住所のセルの内容を表示する際、そのセルの本来の表示領域(1行分の表示領域)だけではなく、連結されたセルの表示領域も使用できる。したがって、1行分の表示領域のみしか使用せずに、名前および住所を表示し、次の行を空欄にする場合と比較して、表示領域を有効利用できる。
ところで、上述したように、本実施形態係る編集処理部12は、行または列単位での編集操作を受け付けることができるが、複数行を1塊とするデータに対して、この操作を行うと、例えば、図5に示す行6および行9のように、本来1塊であるべきデータが分解されてしまう。
これに対して、本実施形態に係る情報処理装置1には、図1に示すように、複数行を1塊とするタイトル行の入力を受け付けるタイトル行入力受付部(受付手段)21と、当該受け付けられたタイトル行に含まれる各セルの書式およびデータ構成の解析結果を記憶する解析結果記憶部(記憶装置)22と、上記タイトル行入力受付部21が受け付けたタイトル行に含まれる各セルの書式およびデータ構成を解析し、解析結果を示す解析結果情報として、1つの塊に含まれるセルが1行に含まれるように変換対象となるセルを変換する際の変換手順、および、その逆変換を行う際の逆変換手順を特定するための情報を上記解析結果記憶部22に格納するデータ構成解析部(解析手段)23と、例えば、解析結果記憶部22を参照するなどして、データ構成解析部23による解析結果を取得し、当該解析結果に基づいて、変換対象となる各セルを各塊に区分すると共に、各塊において、1つの塊を構成する複数行が1行になるように変換する変換処理部(変換手段)24と、上記解析結果記憶部22に格納された解析結果に基づいて、上記1行に変換された各塊を、元の複数行からなる塊に復元する復元処理部(復元手段)25とが設けられている。
上記各部材21〜25および26(一部後述)も、編集処理部12と同様に、CPUが記憶装置に格納されたプログラムを実行し、図示しない入出力回路などの周辺回路を制御することによって実現される機能ブロックである。特に、本実施形態では、上記各部材は、表計算アプリケーションのソフトウェアによって実現される編集処理部12が実行可能なマクロプログラム(表計算アプリケーションのマクロプログラム)によって実現されている。なお、上記各部材11〜12・21〜26のうち、各記憶部11・22は、ROMやRAMなどの記憶装置自体であってもよい。
したがって、これらの手段を有するコンピュータが、上記プログラムを記録した記録媒体(例えば、CD−ROMなど)を読み取り、当該プログラムを実行するだけで、本実施形態に係る情報処理装置1を実現できる。なお、例えば、LAN、あるいは、他の通信路を介してプログラムをダウンロードするためのプログラムが、上記コンピュータに予めインストールされていれば、これらの通信路を介して、上記コンピュータへ上記プログラムを配付することもできる。
ここで、本実施形態に係る変換処理部24および復元処理部25は、変換対象となるセルの範囲の指定を受け付けることができる。さらに、変換処理部24および復元処理部25は、1塊となる行を構成するセル全てが空セルである塊を空の塊とすると、例えば、空の塊を含まないように、タイトル行に塊を追加していき、最も広くなった範囲を変換対象とするなどして、変換対象を推定することもできる。
上記構成では、図6に示すステップ1(以下では、S1のように略称する)において、図4に示す表T1のように、複数の行を1塊とする表において、各塊を1行へ変換するように指示を受けると、タイトル行入力受付部21は、複数行からなるタイトル行の入力を受け付ける。
さらに、S2において、データ構成解析部23は、上記S1にて受け付けたタイトル行に含まれる各セルの書式およびデータ構造を解析し、解析結果を示す解析結果情報を上記解析結果記憶部22に格納する。また、変換処理部24は、S3において、当該解析結果に基づいて、変換対象となる各セルを各塊に区分すると共に、各塊において、1つの塊を構成する複数行が1行になるように変換する。なお、変換する際にセルの位置が変化する場合、上記変換処理部24は、各セルに設定された式の演算結果が変化しないように、各セルの式において評価対象となっているセルの位置を、変換に伴なうセルの位置の移動に応じて変更する。
これにより、例えば、図4に示す表T1の全てが変換対象である場合、表T1の各行2〜13は、それぞれ2行ずつの塊G1〜G6に分割され、各塊G1〜G6が、図7に示す行2〜7のように、1行ずつに変換される。
ここで、例えば、図4の表T1では、複数行に渡っていた各塊G1〜G5が、図7に示す表T2では、それぞれが1行ずつに変換されている。したがって、S4において、編集処理部12は、図7に示す表T2に対して、何ら支障なく、例えば、ソート処理、フィルタリング処理など、行を単位にした編集処理を行うことができる。
一例として、図8は、表T2を、年齢(列Cの内容)でソートした後の表T3を示している。このように、ソート処理は、各塊を1行ずつに変換した表T2に対して行われているため、図5の場合と異なって、本来1塊であったセルがバラバラにソートされるという不具合が発生せず、図7に示す1塊(図7の1行)は、図8に示す表T3のように、ソート後も、1塊(1行)のまま保持されている。
なお、この状態において、編集処理部12は、ユーザの指示に応じて、表計算機能の1つとして予め処理可能な処理(例えば、合計計算処理あるいは平均演算処理など)を行ってもよい。
このように、上記S4において、行を単位とする各種の編集処理が行われた後、S5において、1塊(1行)のデータを複数行に戻すように指示を受けると、復元処理部25は、上記S2にて上記解析結果記憶部22に格納された解析結果に基づいて、上記1行に変換された各塊を、元の複数行からなる塊に復元する。なお、復元する際にセルの位置が変化する場合、上記復元処理部25は、セルに設定された式の演算結果が変化しないように、各セルの式において評価対象となっているセルの位置を、復元時のセルの位置の移動に応じて変更する。
これにより、図8に示す表T3は、図9に示すように、図4と同様、複数の行を1塊とする表T4に復元される。ただし、表T3は、図7に示す表T2を、年齢を示すセルの値(図7に示す列C)の値でソートすることによって生成されている。したがって、図9の表T4では、各塊G2〜G6が年齢でソートされている。
このように、本実施形態に係る情報処理装置1は、1塊となるデータを複数行に配置し、各塊の繰り返しによって構成されている表T1を、上記各塊が1行となった表T2に変換できる。
したがって、例えば、表が横になるのを防ぎ、表を作成する上での見易さを向上させるために、1塊のデータを複数行に配置した表T1があったとしても、当該表T1を、各塊が1行となった表T2に変換すると共に、情報処理装置1の編集処理部12が、当該表T2に対して、行を単位とする処理を行うことによって、1塊となるデータを分割させずに当該処理を行うことができる。
また、本実施形態に係る情報処理装置1は、上記処理後の表T2およびT3では、1行に変換されていた各塊を、元の複数行からなる塊に復元できる。これにより、上記処理の後の表T3を、元の形式の表T4、すなわち、例えば、表が横になるのが防止され、見易さが向上された状態の表T4に復元できる。
ここで、表T4は、表T1の各塊を1行に変換した後、行を単位とした処理を行い、さらに、処理後の各行を1塊に戻すことによって生成されているので、当該表T4は、表T1に対して、各塊を単位にして上記処理を行った表となっている。したがって、上記編集処理部12が表T1の各塊を単位とした処理を行うことができず、行を単位とした処理しか行うことができない場合であっても、情報処理装置1は、1塊のデータを複数行に配置した表T1に対して、何ら支障なく、各塊を単位とした処理を行うことができる。
より詳細には、本実施形態に係る変換処理部24は、上記複数行からなるタイトル行を1行に変換する際、図10に示すように、タイトル行内で縦に並んでいるセルが複数であれば、図11に示すように、それらのセルが横に並ぶように、それらのセルが含まれる列の隣に列を追加すると共に、上記縦に並んでいるセルのうち、2行目以降のセルの内容を移動できる。また、これにより、上記タイトル行のうち、2行目以降の行が空行になるので、変換処理部24は、これらの行を削除している。
これに伴なって、本実施形態に係るデータ構成解析部23は、上記表形式データ記憶部11を参照して、上記タイトル行の各列において、縦に並んでいるセルの数を取得し、それらの数を示すデータ構成情報を、各データ構成の解析結果として格納している。さらに、上記データ構成解析部23は、上記タイトル行入力受付部21が指定を受け付けたタイトル行の行数もデータ構成情報として上記解析結果記憶部22に格納している。
上記変換処理部24によるタイトル行の変換処理をさらに詳細に説明すると、変換処理部24は、当該データ構成情報に基づいて、タイトル行の各列のうち、縦に並んでいるセルが複数(例えば、N個)である列を特定し、その列の隣に(例えば、右隣)、N−1列を追加する。さらに、当該列に含まれるセルのうち、2行目以降のN−1個のセルの内容を、上記追加されたN−1列の1行目に順番に並べている。本実施形態に係る変換処理部24は、列を追加する際、右隣に列を追加しており、2からN−1までの整数をiとし、元の列がk列目の列とするとき、i行目のセルの内容が、k+i−1列目に配置されるように、セルの内容を移動している。
例えば、図4の表T1において、行1および2がタイトル行として指定された場合、タイトル行は、図10に示すようになる。当該タイトル行では、C列に、2つのセルが縦に並んでおり、BおよびD列では、1つのセルしか縦に並んでいない。したがって、データ構成解析部23は、上記データ構成情報として、B列が1つ、C列が2つ、D列が1つであることを示す情報(例えば、(1,2,1)を示すリストなど)を上記データ構成情報として生成する。一方、変換処理部24は、当該データ構成情報に基づき、図11に示すように、C列の隣に新たな列Dを追加し、D列のタイトル行の1行目のセルC2に、C列のタイトル行の2行目のセルC3の内容(この例では、”性別”)を移動する。さらに、それにより、タイトル行の2行目が空行になるので、変換処理部24は、タイトル行の2行目(行3)を削除する。なお、この例では、他の列BおよびDにおいて、縦に並んでいるセルが存在しない。したがって、変換処理部24は、残余の列(図10では、列BおよびD、図11では、列BおよびE)を特に変更していない。
なお、上記変換処理部24は、セルの位置を移動する際(セルの内容を移動する際)、各セルに設定された式の演算結果が変化しないように、各セルの式において評価対象となっているセルの位置を、変換に伴なうセルの位置の移動に応じて変更している。
これにより、例えば、図4の表T1において、行2および3がタイトル行として指定され、かつ、変換対象が行2および行3に設定された場合、変換処理部24は、例えば、図10に示すように複数行から構成されていたタイトル行を、図11に示すように、1行に変換できる。
さらに、変換処理部24は、複数のタイトル行を1行に変換するときと同様に、変換対象となる行のうち、上記タイトル行以外の行を、上記指定されたタイトル行と同じ行数毎に分割できる。また、分割されたタイトル行と同じ行数の行のそれぞれを1塊とするとき、上記変換処理部24は、複数のタイトル行を1行に変換するときと同様、上記データ構成情報に基づいて、各塊を1行に変換できる。これにより、移動したタイトルに対応するデータは、タイトルと同様の行位置に移動される。
例えば、図4に示す表の全てが変換対象である場合、タイトル行以外の行4〜13は、それぞれ2行ずつの塊G2〜G6に分割され、各塊G2〜G6が1行ずつに変換される。これにより、タイトル行以外の行4〜13は、図7に示すように、5行に変換される。例えば、行4および行5からなる塊G2は、図7では、行3に変換されている。
なお、上記復元処理部25は、上記セルの内容を移動する際、各セルに設定された式の演算結果が変化しないように、各セルの式において評価対象となっているセルの位置を、復元時のセルの位置の移動に応じて変更している。
また、上記解析結果情報には、上記指定されたタイトル行に含まれる各セルの書式設定を示す書式情報が含まれており、上記データ構成解析部23は、上記表形式データ記憶部11を参照して、上記タイトル行に含まれる各セルの書式を取得し、各セルの書式を示す情報を、上記解析結果情報として格納できる。加えて、上記解析結果情報には、上記タイトル行に含まれる各セルについて、いずれのセルと結合されているかを示す結合情報も含まれており、上記データ構成解析部23は、上記表形式データ記憶部11を参照して、上記タイトル行に含まれる各セルが、いずれのセルと結合されているかを解析し、その結果を示す結合情報を、上記解析結果情報として格納できる。
一方、上記復元処理部25は、上記変換処理部24と逆の処理を行う処理部であって、変換対象とする各行について、解析結果記憶部22に格納された解析結果のうちのデータ構成情報から、元の1塊において、各列において縦に並んでいるセルの数を取得できる。さらに、復元処理部25は、各列のうち縦に並んでいるセルの数が複数であると特定された列については、その列の隣(上記変換処理部24と同じく右隣)に並んでいるセルを、縦に積み重ねて、当該列に上記特定された数だけのセルが縦に並ぶように変換できる。
ここで、上述したように、本実施形態に係る変換処理部24は、列を追加する際、右隣に列を追加しており、2からN−1までの整数をiとし、元の列がk列目の列とするとき、i行目のセルの内容が、k+i−1列目に配置されるように、セルの内容を移動している。したがって、上記データ構成情報に、列kにN個のセルが縦に並んでいることを示す情報が記憶されていた場合、本実施形態に係る復元処理部25は、k+1からk+N−1までの整数をiとし、元の行をj行目とするとき、j行目の下にN−1行の行を追加すると共に、列iのセルが、列kのj+i−k行目に配されるように、各セルの内容を移動する。なお、変換対象とする各行について、上記セル内容の移動が行われると、列kの隣のN−1列が空列になるので、復元処理部25は、当該N−1列を削除している。
これにより、復元処理部25は、タイトル行が複数だった列から始まるN列のデータ(N個のセルの内容)が1列になるように、N−1行を追加し、上記N列のデータを縦に積み上げることができる。
さらに、復元処理部25は、各行を複数行からなる塊ずつに復元すると、上記解析結果記憶部22に記憶された書式情報に基づいて、1行に変換する前の各セルの書式を特定し、復元された各セルの書式を、1行に変換する前の各セルの書式と同じになるように設定する。また、復元処理部25は、上記解析結果記憶部22に記憶された結合情報に基づいて、1行に変換する前の各セルが、いずれのセルと結合されていたかを特定し、復元された各セルを、1行に変換する前と同様に結合できる。これにより、図9に示す表T4では、罫線やフォントなどの書式設定、および、各セルの結合状態も、図4と同様の状態に復元されている。
上記構成では、図12に示すS11において、情報処理装置1のタイトル行入力受付部21が、ユーザによるタイトル行の指定を受け付けると、S12において、データ構成解析部23は、当該S11にて指定されたタイトル行を解析して、上記データ構成情報、書式情報および結合情報を含む解析結果情報を上記解析結果記憶部22に格納する。
ここで、上述したタイトル行を1行に変換する処理を行った後、タイトル行以外の行について、各塊を1行ずつに変換する処理を行ってもよいが、本実施形態に係る変換処理部24は、タイトル行を1行に変換しながら、タイトル行以外の行について、各塊を1行ずつに変換している。
具体的には、変換処理部24は、S21において、上記データ構成情報に基づいて、タイトル行のうち、複数のセル(Nセル)が縦に並んでいる列の隣に、N−1列追加して、2段目以下(2行目以降)のセルの内容を、追加した列に移動する。
さらに、変換処理部24は、S22において、上記データ構成情報に基づいて、タイトル行と同様に、複数のセル(Nセル)が縦に並んでいる列の隣にN−1列追加し、S23において、移動したタイトルに対応するデータ(セルの内容)をタイトルと同様の行位置に移動する。なお、上記S21におけるタイトル行の処理において、タイトル行以外の行についても列が追加されていれば、S22の処理を省略してもよい。
上記S21〜S23の処理は、全てのデータが移動されるまで(S24にてYES になるまで)繰り返される。これにより、複数のセル(Nセル)が縦に並んでいる列の隣にN−1列が追加され、追加された各列のうち、各塊の第1行目のセルには、2段目以下(2行目以降)のセルの内容が移動される。
また、上記S21〜S24の処理は、タイトル行において、複数のセルが縦に並んでいる列が無くなるまでの間(S25にてYES になるまでの間)繰り返される。これにより、複数行からなる塊の複数(G1〜G6)によって構成された表T1(図4参照)が、図7に示す表T2のように、各塊が1行になるように変換される。
なお、上記S21〜S24における列の追加およびセルの内容の移動によって、複数行からなる塊を1行に変換した結果、各塊のうち、2行目以降の行は、空行になっているが、変換処理部24は、例えば、上記S24において、タイトル行において、複数のセルが縦に並んでいる列が無くなったことを検出した場合などの時点で、各塊(タイトル行数分の行)のうち、2行目以降の行を削除している。
一方、復元処理部25が元の複数行の構造へと変換する際の動作を、図13に示すフローチャートに基づいて説明すると、以下の通りである。すなわち、S31において、復元処理部25は、解析結果記憶部22に格納された解析結果情報に基づいて、タイトル行数が複数であるか否かを判定する。一例として、本実施形態に係る復元処理部25は、データ構成情報に基づき、縦に並んでいるセルの数が複数になっている列があるか否かによって、タイトル行数が複数であるか否かを判定している。
タイトル行の行数が複数の場合(上記S31にてYES の場合)、復元処理部25は、S32において、解析結果記憶部22に記憶されていたデータ構成情報に基づき、上述したように、複数行のタイトルを積み上げる。さらに、復元処理部25は、S33において、タイトル行以外の各行についても、上述したように、タイトル行が複数だった列から始まるN列のデータ(N個のセルの内容)が1列になるように、N−1行を追加し、上記N列のデータを縦に積み上げる。
さらに、復元処理部25は、S34において、上記解析結果記憶部22に記憶されていた書式情報に基づいて、各塊を構成する各セルの書式を設定する。さらに、復元処理部25は、上記解析結果記憶部22に記憶されていた書式情報に基づいて、各塊を構成する各セルを結合する。
これにより、図8に示すように、1塊のデータが1行に配置されていた表T3は、図9に示すように、各塊のデータが複数行に配置された表であって、しかも、罫線やフォントなどの書式設定、および、各セルの結合状態も、図4の表T1と同様の状態に復元された表T4に復元される。なお、上記S31において、タイトル行数が複数ではないと判定した場合、復元処理部25は、上記S32以降の処理を行うことなく、処理を終了する。
ところで、上記では、データ構成解析部23が、タイトル行入力受付部21が指定を受け付けたタイトル行を解析する場合について説明したが、本実施形態に係るデータ構成解析部23は、表形式データに予め設定されているタイトル行を参照し、当該タイトル行を解析してもよい。
具体的には、表が複数ページに渡る場合に、2ページ以降にも、表のタイトル行を表示/印刷するために、編集処理部12は、表のタイトル行の指定操作を受け付けると、当該タイトル行を示すデータを表形式データに設定できる。さらに、編集処理部12は、表形式データにおいてタイトル行が設定されている場合、2ページ以降を表示/印刷する際、そのページの表の最初の行の前に、上記設定されたタイトル行を表示/印刷できる。
一方、データ構成解析部23は、例えば、表形式データに設定されたタイトル行(ページ設定データ)を解析して上記変換処理を行うように指示された場合、あるいは、例えば、1塊のデータが複数行に配置されている表を、1塊のデータが1行に配置された表に変換するように指示されたときに、初期設定として、表形式データに設定されたタイトル行を提示し、特に変更されない場合などに、当該表形式データに設定されたタイトル行を解析できる。これにより、変換処理部24は、表形式データに設定されたタイトル行に基づいて、1塊となるデータを特定し、1塊のデータが複数行に配置されている表を、1塊のデータが1行に配置された表に変換できる。
また、上記では、タイトル行入力受付部21がタイトル行の指定操作を受け付け、データ構成解析部23および変換処理部24が、当該タイトル行に基づいて、1塊となるデータを特定する場合について説明したが、本実施形態に係るタイトル行入力受付部21は、タイトル行の入力に代えて、表の途中に配置された1塊の指定操作を受け付けることもできる。この場合、データ構成解析部23は、複数行からなるタイトル行を解析する場合と同様に、当該入力された塊となる複数行を解析し、変換処理部24は、タイトル行を1行に変換すると共に、タイトル行以外の行を塊毎に分割して、各塊を1行ずつに変換する場合と同様に、上記指定された塊を1行に変換すると共に、変換対象のうちの上記指定された塊以外の行を塊毎に分割して、各塊を1行ずつに変換する。
例えば、図4に示す表T1において、行5および行6が1塊であるとの指定をタイトル行入力受付部21が受け付け、変換対象として表全体が指定されると、データ構成解析部23は、行5および行6を解析し、変換処理部24は、図7に示す表T2を生成できる。
さらに、タイトル行入力受付部21が表の途中に配置された1塊の指定操作を受け付けた場合、本実施形態に係る変換処理部24および復元処理部25は、空の塊を含まないように、指定された1塊の前または後に塊を追加していき、最も広くなった範囲を変換対象とするなどして、変換対象を推定できる。
また、本実施形態に係る変換処理部24および復元処理部25は、変換対象を推定した場合、例えば、上記推定した変換対象を初期設定の変換対象として提示し、それが誤っていた場合は変換対象となる範囲の修正指示を受け付けるなどして、推定した変換範囲の修正指示を受け付けることができる。
ここで、一般に、タイトル行の上には、表のタイトルが配置されていることがあるので、上記のように推定すると、表のタイトルも変換対象として推測してしまう虞れがある。このように、表の途中に配置された1塊の指定操作を受け付けた場合は、タイトル行の指定操作を受け付けた場合と比較して、変換対象を誤って推定する可能性が高い。
ところが、変換処理部24および復元処理部25は、推定した変換範囲の修正指示を受け付けることができる。したがって、推定が誤っていた場合は、誤った変換対象を変換してしまうことを防止でき、しかも、推定が正しい場合は、変換対象を指定する手間を省略できる。
なお、上記では、タイトル行が表形式データに設定されていた場合と、ユーザがタイトル行を指定した場合と、および、ユーザが1塊となる範囲を指定した場合とのいずれであっても、それらの指定または設定に基づいて1塊となるデータを特定可能なように、上記情報処理装置1が構成されている場合について説明したが、これに限るものではない。これらのいずれかに基づいて1塊となるデータを特定できれば、同様の効果が得られる。
〔第2の実施形態〕
ところで、上記では、表形式データに設定されていたタイトル行、ユーザによって指定されたタイトル行、あるいは、ユーザによって指定された1塊となる範囲によって、データ構成解析部23および変換処理部24は、1塊となるデータを特定していたが、これに限るものではない。これらの指定/設定の参照に代えて、または、加えて、表形式データのフォーマットを解析して、1塊となるデータを特定してもよい。
ところで、上記では、表形式データに設定されていたタイトル行、ユーザによって指定されたタイトル行、あるいは、ユーザによって指定された1塊となる範囲によって、データ構成解析部23および変換処理部24は、1塊となるデータを特定していたが、これに限るものではない。これらの指定/設定の参照に代えて、または、加えて、表形式データのフォーマットを解析して、1塊となるデータを特定してもよい。
一例として、これらの指定/設定の参照に代えて、表形式データのフォーマット解析によって、1塊となるデータを特定する構成について説明する。すなわち、図14に示すように、本変形例に係る情報処理装置1aは、図1に示す情報処理装置1と略同様の構成であるが、タイトル行入力受付部21に代えて、表形式データのフォーマット解析によって、1塊となるデータを特定する塊推定処理部(塊推定手段)26が設けられている。
より詳細には、本実施形態に係る塊推定処理部26は、表形式データを参照して、表のフォーマットを解析し、表において、一定のフォーマットが、ある複数の行数毎に繰り返されている場合、これら複数の行を1塊として推定できる。本実施形態では、フォーマットの一例として、書式設定、セルの結合状態、セルが空であるか否か、あるいは、それらの組み合わせを解析しており、例えば、書式設定としての罫線設定が、ある複数の行数毎に繰り返されている場合、これらの行を1塊として推定する。
例えば、図4の例では、2行毎に同じ罫線設定が繰り返されている。したがって、塊推定処理部26は、表T1は、2行毎の塊G1〜G6に分割できると判断し、そのうちの1塊(例えば、行1および2)を解析するように、データ構成解析部23へ指示する。
これにより、塊の推定が正しければ、第1の実施形態に係る情報処理装置1と同様に、1塊のデータを複数行に配置した表(T1およびT4)と、1塊のデータを1行に配置した表(T2およびT3)とを相互に変換できる。
また、本実施形態に係る塊推定処理部26は、例えば、1塊と推定した行(複数行)をユーザに提示して、それが誤っていた場合は塊となる行の修正指示を受け付けるなどして、推定した塊の修正指示を受け付けることができる。これにより、推定が正しければ、塊を指定する手間を省略できると共に、塊が誤っていた場合にも、誤った単位で表を変換してしまうという不具合の発生を防止できる。
なお、上記各実施形態では、1塊となる複数行の各列の中に、複数のセルが縦に並んだ列がある場合、その列の隣に列を追加し、その塊の2行目以降のセルの内容を当該追加した列に移動しているが、これに限るものではない。複数行からなる1塊を1行に変換できれば、他の列(最後の列など)に、上記2行目以降のセルの内容を移動してもよい。
ただし、上記各実施形態のように、その列の隣の列に移動すれば、複数行を1塊とする表において縦に隣接して表示されていたセル同士を、各塊を1行ずつに変換した表においても隣接して表示させることができる。ここで、横に隣接して表示されていたセル同士は、変換後、いくつかのセルを置いて配置されることになるが、一般に、1塊において、縦に並べられたセルの数は、1塊において、横に並べられているセルの数よりも少ない。この結果、最後の列に移動した場合と比較して、変換後の表を見やすくすることができる。
なお、上記各実施形態に係るデータ構成解析部23は、書式情報として、1塊の書式情報を記憶しているが、これに限るものではない。表は、タイトル行となる塊(第1の塊)と、実際のデータが入力される塊(タイトル行以外の塊)のうちの最初の塊(第2の塊)と、実際のデータが入力される塊のうちの最後の塊(第3の塊)と、実際のデータが入力される塊のうちの残余の塊(第4の塊)とは、書式が異なっていることがある。
したがって、データ構成解析部23は、解析結果情報のうち、書式情報については、表形式データ記憶部11に記憶されている変換対象の中から、上記第1〜第4の塊を、それぞれ1塊ずつ選択し、それぞれの書式情報を生成してもよい。また、復元処理部25は、各行を塊に復元する際、各行を、「タイトル行」、「タイトル行以外の行のうちの最初の行」、「タイトル行以外の行のうちの最後の行」、「タイトル行以外の行のうちの最初でも最後でもない行」のいずれにあたるかを判定し、1行を塊に復元する際、第1〜第4の塊の書式情報のうち、判定結果に応じた書式情報を適用してもよい。
また、上記各実施形態では、データ構成解析部23は、解析結果として、書式情報を生成しているが、これに限るものではない。例えば、書式情報を生成する代わりに、書式情報を保持したまま、各セルを移動してもよい。また、上記では、データ構成解析部23が1塊となるセルを解析する際、解析結果情報として、縦に並んでいるセルの数を取得し、それらの数を示すデータ構成情報を生成しているが、これに限るものではない。
1つの塊に含まれるセルが1つの処理単位に含まれるように上記変換対象を変換する際の変換手順、および、その逆変換を行う際の逆変換手順を特定すると共に、当該両手順を示す情報を解析結果として生成できれば、同様の効果が得られる。一例として、単に1つの塊に含まれる行数であっても、各行に含まれるセル全てを1行にまとめたり、その逆に分散させることができるので、当該行数を示す情報を、解析結果として生成してもよい。
ただし、上記各実施形態のように、結合されているか否か(縦に並んだセルの数)を数えた場合、1行に変換する際、以下のセル、すなわち、あるセルに結合された結果、データが入力されないセルを飛ばして配置することができる。したがって、セルが結合されているか否かに拘わらず、一律に変換する上記構成よりも、変換後の表を見やすくすることができる。
なお、データ構成解析部23は、セルが結合されているか否かを解析する代わりに、セルの内容が空であるか否かを解析し、内容が空のセルを飛ばして配置してもよい。この場合でも、上記一律に変換する構成よりも変換後の表を見やすくすることができる。ただし、この場合は、解析対象となった塊のセルが偶然空きになっているだけであり、他の塊における同じ位置のセルには、データが入力されている場合も、そのセルを飛ばして配置する虞れがある。したがって、この場合は、複数の塊を解析する方が望ましい。
なお、上記各実施形態では、1塊となる行が特定された後、変換処理部24が各塊を1行ずつに変換し、行単位の処理を受け付けた後、復元処理部25が各行を塊に復元することによって、塊単位の処理を実現しているが、これに限るものではない。
例えば、1塊となる行が特定された後、編集処理部12が行単位の操作を受け付ける代わりに、塊単位の操作を受け付けてもよい。なお、この場合、編集処理部12は、変換処理部24と同様に内部で1行に変換し、上記受け付けた操作に応じた処理を行った後、復元処理部25と同様に内部で塊に変換してもよいし、上記特定された塊単位での処理を行うルーチンを新たに作成して、編集処理部12を実現してもよい。
いずれの場合であっても、タイトル行入力受付部21が1塊となる範囲の指定を受け付け、例えば、編集処理部12、変換処理部24および復元処理部25などからなるデータ処理部が、当該塊を単位として、上記表形式のデータを処理できれば、同様の効果が得られる。
したがって、いずれの数の処理単位に、1塊となるセルが配置されていたとしても、データ処理部は、その表形式のデータに合った単位で、例えば、ソート、フィルタリング、および、各塊を1処理単位ずつに変換する処理などの処理を行うことができる。これにより、1塊のセルが複数の処理単位に配置されている表形式のデータに対して、何ら支障なく、各塊を単位とした処理を行うことができる。
さらに、上記各実施形態では、複数行が1塊である表と、1行が1塊である表とを相互に変換する場合を例にして説明したが、行と列とを入れ換えても同様の効果が得られる。具体的には、情報処理装置(1・1a)は、複数列が1塊である表と、1列が1塊である表とを相互に変換してもよい。なお、上記各説明において、行と列とを入れ換え、上と左とを入れ換え、さらに、下と右とを入れ換えれば、情報処理装置は、複数列が1塊である表と、1列が1塊である表とを相互に変換できる。
この場合であっても、情報処理装置の編集処理部(12)が複数列を単位とする処理を行うことができなかったとしても、列を単位とする処理を行うことさえできれば、行の場合と略同様に、情報処理装置が複数列が1塊である表と、1列が1塊である表とを相互に変換することによって、何ら支障なく、複数列を対象とする処理を行った後の表を生成できる。
表計算アプリケーション、作表アプリケーションをはじめとして、表形式のデータを処理する情報処理装置に広く適用できる。
1・1a 情報処理装置
12 編集処理部(情報処理部;データ処理手段)
21 タイトル行入力受付部(受付手段)
22 解析結果記憶部(記憶装置)
23 データ構成解析部(解析手段)
24 変換処理部(変換手段)
25 復元処理部(復元手段)
26 塊推定処理部(塊推定手段)
12 編集処理部(情報処理部;データ処理手段)
21 タイトル行入力受付部(受付手段)
22 解析結果記憶部(記憶装置)
23 データ構成解析部(解析手段)
24 変換処理部(変換手段)
25 復元処理部(復元手段)
26 塊推定処理部(塊推定手段)
Claims (8)
- 表の行および列のうちの一方を処理単位とするとき、複数のセルからなる処理単位が複数設けられた表形式のデータを処理する情報処理装置において、
予め定められる複数の処理単位を塊とするとき、上記表形式のデータのうち、その位置が変換対象の範囲に含まれ、しかも、上記塊に含まれるセルのデータ構造を解析して、1つの塊に含まれるセルが1つの処理単位に含まれるように上記変換対象を変換する際の変換手順、および、その逆変換を行う際の逆変換手順を特定すると共に、当該両手順を示す解析結果を記憶装置に記憶する解析手段と、
上記解析手段による解析結果に基づいて、上記表形式のデータのうち、その位置が変換対象の範囲に含まれるセルを、上記塊毎に分割し、当該各塊を上記変換手順に従って変換することによって、1塊に含まれるセルが1処理単位に含まれるように上記変換対象を変換すると共に、当該変換後の表形式のデータを、上記処理単位を処理の単位とする操作を受け付け可能な情報処理部へ出力する変換手段と、
上記情報処理部によって操作された表形式のデータのうち、その位置が変換対象の範囲に含まれるセルを、上記処理単位毎に分割すると共に、上記記憶装置に含まれた解析結果に基づき、当該分割された各処理単位を、それぞれ上記逆変換手順に従って上記塊に逆変換する復元手段とを備えていることを特徴とする情報処理装置。 - 上記表形式のデータの上記各塊のうち、各セルのタイトルが入力されている塊の指定を受け付け、当該塊の解析を上記解析手段へ指示する受付手段を備えていることを特徴とする請求項1記載の情報処理装置。
- 上記表形式のデータには、表が複数のページに渡って表示または印刷される場合に、各ページの先頭となる処理単位の前に予め定められた複数の処理単位のセルの内容を表示または印刷するように、上記情報処理部へ指示するページ設定データが含まれており、
上記解析手段は、当該ページ設定データによって指定された上記複数の処理単位を、上記1塊として解析することを特徴とする請求項1または2記載の情報処理装置。 - 上記表形式のデータのうち、その位置が変換対象の範囲に含まれるセルのフォーマットを解析し、あるフォーマットが、複数の処理単位毎に繰り返されているか否かを判定し、繰り返されている場合、当該フォーマットが繰り返されている処理単位の数からなる処理単位を、1塊として、当該塊の解析を、上記解析手段へ指示する塊推定手段を備えていることを特徴とする請求項1〜3のいずれか1項に記載の情報処理装置。
- 表の行および列のうちの一方を処理単位とするとき、複数のセルからなる処理単位が複数設けられた表形式のデータを処理する情報処理装置において、
予め定められる複数の処理単位を塊とするとき、1塊となる範囲の指定を受け付ける受付手段と、
当該塊を単位として、上記表形式のデータを処理するデータ処理手段とを備えていることを特徴とする情報処理装置。 - 上記塊を単位とする処理は、ソート処理、フィルタリング処理、および、各塊を1処理単位ずつに変換する処理の少なくとも1つであることを特徴とする請求項5記載の情報処理装置。
- 請求項1〜6のいずれか1項に記載の情報処理装置の各手段として、コンピュータを動作させるプログラム。
- 請求項7記載のプログラムが記録された、コンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005317333A JP2007122638A (ja) | 2005-10-31 | 2005-10-31 | 情報処理装置、並びに、そのプログラムおよび記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005317333A JP2007122638A (ja) | 2005-10-31 | 2005-10-31 | 情報処理装置、並びに、そのプログラムおよび記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007122638A true JP2007122638A (ja) | 2007-05-17 |
Family
ID=38146376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005317333A Pending JP2007122638A (ja) | 2005-10-31 | 2005-10-31 | 情報処理装置、並びに、そのプログラムおよび記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007122638A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010129075A (ja) * | 2008-11-27 | 2010-06-10 | Satomi Kato | 表計算システムにおける2次元バーコード生成方式 |
JP2011170753A (ja) * | 2010-02-22 | 2011-09-01 | Mitsubishi Electric Corp | 設計データ管理装置 |
WO2017134800A1 (ja) * | 2016-02-04 | 2017-08-10 | 富士通株式会社 | 表形式データの解析方法、表形式データの解析プログラム及び情報処理装置 |
-
2005
- 2005-10-31 JP JP2005317333A patent/JP2007122638A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010129075A (ja) * | 2008-11-27 | 2010-06-10 | Satomi Kato | 表計算システムにおける2次元バーコード生成方式 |
JP2011170753A (ja) * | 2010-02-22 | 2011-09-01 | Mitsubishi Electric Corp | 設計データ管理装置 |
WO2017134800A1 (ja) * | 2016-02-04 | 2017-08-10 | 富士通株式会社 | 表形式データの解析方法、表形式データの解析プログラム及び情報処理装置 |
US10970478B2 (en) | 2016-02-04 | 2021-04-06 | Fujitsu Limited | Tabular data analysis method, recording medium storing tabular data analysis program, and information processing apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9325869B2 (en) | Image processing apparatus, image processing method, and image processing program | |
JP6333798B2 (ja) | 数値制御装置 | |
JP5739623B2 (ja) | 編集装置、およびプログラム | |
JP2007122638A (ja) | 情報処理装置、並びに、そのプログラムおよび記録媒体 | |
JP2005309829A5 (ja) | ||
JP4358761B2 (ja) | 画像処理プログラム、画像処理装置及び記録媒体 | |
JP6790785B2 (ja) | ヒューマンインターフェースのデータ作成装置 | |
JP2007025457A (ja) | 画像表示プログラム、および画像表示装置 | |
JP2009211143A (ja) | 情報処理装置および情報処理プログラム | |
JPS61173373A (ja) | 文書編集装置 | |
JP6244743B2 (ja) | レイアウト編集処理方法,装置およびプログラム | |
JP7351109B2 (ja) | 表示制御装置及び表示制御プログラム | |
JPH08185452A (ja) | 文書作成装置 | |
JP4698085B2 (ja) | データマップ作成支援装置、データマップ作成支援方法、データマップ作成支援プログラムを記憶したコンピュータ読み取り可能な記録媒体、及びデータマップ作成支援プログラム。 | |
JP2012008799A (ja) | 電子文書作成装置、電子文書作成方法、及びコンピュータプログラム | |
JP6657354B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP4005108B2 (ja) | 表示制御プログラムおよび記録媒体 | |
JP2017068371A (ja) | 情報処理装置、画面生成方法および画面生成プログラム | |
JP4759874B2 (ja) | 表組みパターン作成装置 | |
JP2958479B2 (ja) | 文書作成装置 | |
JP2005165985A (ja) | 領域指定機能およびデータ切り出し機能を備えたdtp編集装置 | |
JP3978173B2 (ja) | 帳票作成方法 | |
JP2005190194A (ja) | 情報処理装置、情報処理方法、プログラム及び記録媒体 | |
JPS61105605A (ja) | プログラマブルコントロ−ラに於けるラダ−編集方式 | |
JP5630995B2 (ja) | 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム |