(57)【特許請求の範囲】
【請求項１】
情報処理装置が以下の各ステップを実行する表データ変換方法であって、
格子状にマス目が配列された表データを、数値の登録されたマス目が行列状に配列された数値部と、その周囲に配列された項目の登録されたマス目からなる項目部とに分類する分類ステップと、
前記情報処理装置が、前記項目部に分類されたマス目の登録内容を解析して集計方法を示す所定のキーワードを検出する検出ステップと、
前記検出ステップで検出したキーワードに対応する演算種別を特定する第１特定ステップと、
集計結果が格納されるマス目である集計結果格納セルと、該集計結果格納セルに格納される集計結果を求める際の集計範囲を特定する第２特定ステップと、
前記集計結果格納セルに格納する集計結果を算出するための計算式を、前記第２特定ステップで特定した集計範囲と前記第１特定ステップで特定した演算種別とから作成する計算式作成ステップと、
前記表データの前記集計結果格納セルに前記計算式作成ステップで作成した計算式を挿入した第２表データを生成する挿入ステップと、
を有し、
前記第２特定ステップでは、
前記検出ステップで前記所定のキーワードが検出されたマス目と同一の行もしくは同一の列に存在する数値部の各マス目を、集計結果が格納される集計結果格納セルとし、
前記所定のキーワードが検出されたマス目と前記集計結果格納セルとが同一の行にある場合は前記集計結果格納セルと同一の列にある数値部のマス目を、前記所定のキーワードが検出されたマス目と前記集計結果格納セルとが同一の列にある場合は前記集計結果格納セルと同一の行にある数値部のマス目を、所定のグループ化条件でグループ化して１または２以上の仮集計範囲を設定し、
前記第１特定ステップで特定した演算種別の計算を前記仮集計範囲に適用して得た計算結果と前記表データの前記集計結果格納セルの位置に元々あった数値との比較結果に基づいて、前記仮集計範囲の中から前記集計結果格納セルに格納される集計結果を求める際の集計範囲を特定する
ことを特徴とする表データ変換方法。
【請求項２】
前記第１特定ステップでは、集計方法を示すキーワードと演算種別とが予め対応付けて登録されたテーブルを参照して、前記検出ステップで検出されたキーワードに対応する演算種別を特定する
ことを特徴とする請求項１に記載の表データ変換方法。
【請求項３】
前記グループ化条件は、
・隣接するマス目間の罫線の種類が同じである、
・隣接するマス目の背景色が同じである、
の少なくとも１つを含む
ことを特徴とする請求項１または２に記載の表データ変換方法。
【請求項４】
前記挿入ステップでは、
前記所定のキーワードが検出された一のマス目に対応する前記集計結果格納セルの全部もしくは少なくとも１つで、前記表データのマス目に含まれる数値を前記集計結果格納セルに挿入予定の計算式で計算して得た計算結果と前記表データの前記集計結果格納セルの位置に元々あった数値とが一致する場合に、前記前記集計結果格納セルに前記計算式を挿入する
ことを特徴とする請求項１乃至３のいずれか１つに記載の表データ変換方法。
【請求項５】
前記表データのマス目に含まれる数値を前記集計結果格納セルに挿入予定の計算式で計算して得た計算結果と前記表データの前記集計結果格納セルの位置に元々あった数値とが一致しない場合に、その旨をユーザに通知する通知ステップ
をさらに有する
ことを特徴とする請求項１乃至４のいずれか１つに記載の表データ変換方法。
【請求項６】
画像データを解析して表を識別し、該表の各マス目に含まれる画像を数値または文字のデータに置き換えて前記表データを生成するステップをさらに有する、
ことを特徴とする請求項１乃至５のいずれか１つに記載の表データ変換方法。
【請求項７】
前記画像データは、原稿をスキャナで光学的に読み取って得たイメージデータである
ことを特徴とする請求項６に記載の表データ変換方法。
【請求項８】
情報処理装置にて実行されるプログラムであって、
請求項１乃至７のいずれか１つに記載の表データ変換方法の各ステップを有する
ことを特徴とするプログラム。
【請求項９】
原稿を光学的に読み取って画像データを取得するスキャナと、
前記スキャナで原稿を読み取って得たイメージデータを対象に請求項７に記載の表データ変換方法を実行する情報処理装置と、
を有する
ことを特徴とする画像読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、項目と数値が配列された表データから集計に使用された計算式を導出して再利用可能なデータに変換する表データ変換方法、プログラム、画像読取装置に関する。
【背景技術】
【０００２】
近年、文字認識技術の精度向上に伴い、集計表をスキャナで読み取って得たイメージデータに対して、ＯＣＲ（光学文字認識、Optical  character recognition）やＩＣＲ（インテリジェント文字認識、intelligent character recognition）などの画像解析処理を行うことで、罫線や文字、数値を認識し、所定の表計算プログラム等で利用可能な形式の表データに変換する技術がある。
【０００３】
たとえば、下記特許文献１には、入力画像に存在する集計表の中に計算式を記載しておくと、記載された計算式通りの計算を実施し、その計算結果を、計算式が記載されていたセルに描画したり、指定された形式で計算結果をグラフ化したりする技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０９−１３８８５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来、画像解析処理を適用して得た表データは、集計対象の数値のセルだけでなく、集計結果のセルについても、計算式ではなく、集計結果の数値データが格納されるだけなので、後の編集に適さないデータ形式であった。たとえば、画像解析処理を適用して取得した図２１（ａ）の表データに対し、新たに列を追加し、同図（ｂ）に示すように、”渡辺”のデータを記載する編集を行った場合、編集者は、渡辺さんのデータを追加後に、手作業で、Ｆ列の合計値を、”渡辺”の値を反映した値に再計算して記入する必要があり、作業者の手間となってしまう。
【０００６】
また、画像解析処理で文字を認識した際に、数値が誤認識された場合、表中の合計値が無効な値となってしまう。たとえば、図２１（ａ）のＤ２のセルの値は本来「６」であるが、これを「８」と誤認した場合、Ｅ２のセルの値「１２」、Ｄ６のセルの値「２３」が整合しなくなってしまう。そして、この誤りを発見し修正するためには、表の各セルの値を１つ１つ確認する必要があり、膨大な工数が発生してしまう。
【０００７】
特許文献１に開示の技術は、計算式を予め記述する必要があって手間を要すると共に、出力される表には計算結果が記述されるだけなので、その後の編集や誤認識の検出は、やはり、できない。
【０００８】
本発明は、上記の問題を解決しようとするものであり、項目と数値が記述された表データから集計に使用された計算式を導出してその計算式が埋め込まれた表データを出力することのできる表データ変換方法、およびプログラム、画像読取装置を提供することを目的としている。
【課題を解決するための手段】
【０００９】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【００１０】
［１］  情報処理装置が以下の各ステップを実行する表データ変換方法であって、
格子状にマス目が配列された表データを、数値の登録されたマス目が行列状に配列された数値部と、その周囲に配列された項目の登録されたマス目からなる項目部とに分類する分類ステップと、
前記情報処理装置が、前記項目部に分類されたマス目の登録内容を解析して集計方法を示す所定のキーワードを検出する検出ステップと、
前記検出ステップで検出したキーワードに対応する演算種別を特定する第１特定ステップと、
集計結果が格納されるマス目である集計結果格納セルと、該集計結果格納セルに格納される集計結果を求める際の集計範囲を特定する第２特定ステップと、
前記集計結果格納セルに格納する集計結果を算出するための計算式を、前記第２特定ステップで特定した集計範囲と前記第１特定ステップで特定した演算種別とから作成する計算式作成ステップと、
前記表データの前記集計結果格納セルに前記計算式作成ステップで作成した計算式を挿入した第２表データを生成する挿入ステップと、
を有し、
前記第２特定ステップでは、
前記検出ステップで前記所定のキーワードが検出されたマス目と同一の行もしくは同一の列に存在する数値部の各マス目を、集計結果が格納される集計結果格納セルとし、
前記所定のキーワードが検出されたマス目と前記集計結果格納セルとが同一の行にある場合は前記集計結果格納セルと同一の列にある数値部のマス目を、前記所定のキーワードが検出されたマス目と前記集計結果格納セルとが同一の列にある場合は前記集計結果格納セルと同一の行にある数値部のマス目を、所定のグループ化条件でグループ化して１または２以上の仮集計範囲を設定し、
前記第１特定ステップで特定した演算種別の計算を前記仮集計範囲に適用して得た計算結果と前記表データの前記集計結果格納セルの位置に元々あった数値との比較結果に基づいて、前記仮集計範囲の中から前記集計結果格納セルに格納される集計結果を求める際の集計範囲を特定する
ことを特徴とする表データ変換方法。
【００１１】
上記発明では、表データの項目欄に「合計」等のキーワードがある場合に、そのキーワードに対する演算種別（たとえば、ＳＵＭ等の関数）を特定すると共に、その集計結果（合計値等）が記述されている集計結果格納セルとその集計結果を求める際の集計範囲を特定する。そして、これらから、集計結果を算出するための計算式を生成して、該計算式をその集計結果格納セルに挿入する。
また上記発明では、合計等のキーワードが検出されたマス目と同じ列に数値が格納されたマス目が配列されている場合、キーワードが検出されたマス目と同じ列に含まれる数値部のマス目を集計結果格納セルに特定する。合計等のキーワードが検出されたマス目と同じ行に数値が格納されたマス目が配列されている場合、マス目と同じ行に含まれる数値部のマス目を集計結果格納セルに特定する。そして、たとえば、一の集計結果格納セルとこれに対応する合計等のキーワードを含むマス目が同じ列に配列されている場合には、該一の集計結果格納セルと同じ行に配列されている数値を含むマス目が集計の対象に成り得る。これら集計の対象に成り得るマス目を所定のグループ化条件でグループ化して１または２以上の仮集計範囲を特定する。そして、第１特定ステップで特定した演算種別の計算を仮集計範囲に適応して得た計算結果とその集計結果格納セルに元々記述されていた数値との比較結果に基づいて、仮集計範囲の中から正しい集計範囲を特定する。
【００１２】
［２］前記第１特定ステップでは、集計方法を示すキーワードと演算種別とが予め対応付けて登録されたテーブルを参照して、前記検出ステップで検出されたキーワードに対応する演算種別を特定する
ことを特徴とする［１］に記載の表データ変換方法。
【００１８】
［３］前記グループ化条件は、
・隣接するマス目間の罫線の種類が同じである、
・隣接するマス目の背景色が同じである、
の少なくとも１つを含む
ことを特徴とする［１］または［２］に記載の表データ変換方法。
【００１９】
上記発明では、マス目を形成する罫線の同一性や背景色の同一性に基づいて仮集計範囲を特定する。
【００２０】
［４］前記挿入ステップでは、
前記所定のキーワードが検出された一のマス目に対応する前記集計結果格納セルの全部もしくは少なくとも１つで、前記表データのマス目に含まれる数値を前記集計結果格納セルに挿入予定の計算式で計算して得た計算結果と前記表データの前記集計結果格納セルの位置に元々あった数値とが一致する場合に、前記前記集計結果格納セルに前記計算式を挿入する
ことを特徴とする［１］乃至［３］のいずれか１つに記載の表データ変換方法。
【００２１】
上記発明では、一の集計結果格納セルに対して作成した計算式による計算結果と、元々その集計結果格納セルに記述されていた数値とが一致する場合に、その計算式が正しいと判断して、該計算式をその集計結果格納セルに挿入する。
【００２２】
［５］前記表データのマス目に含まれる数値を前記集計結果格納セルに挿入予定の計算式で計算して得た計算結果と前記表データの前記集計結果格納セルの位置に元々あった数値とが一致しない場合に、その旨をユーザに通知する通知ステップ
をさらに有する
ことを特徴とする［１］乃至［４］のいずれか１つに記載の表データ変換方法。
【００２３】
上記発明では、一の集計結果格納セルに対して作成した計算式による計算結果と、元々その集計結果格納セルに記述されていた数値とが一致しない場合には、ＯＣＲでの認識エラーや計算式にエラーがあったと判断して、その旨をユーザに通知する。
【００２４】
［６］画像データを解析して表を識別し、該表の各マス目に含まれる画像を数値または文字のデータに置き換えて前記表データを生成するステップをさらに有する、
ことを特徴とする［１］乃至［５］のいずれか１つに記載の表データ変換方法。
【００２５】
上記発明では、イメージ画像であった表に画像解析処理を施して、文字や数値がコードデータで表された表データを生成する。
【００２６】
［７］前記画像データは、原稿をスキャナで光学的に読み取って得たイメージデータである
ことを特徴とする［６］に記載の表データ変換方法。
【００２７】
［８］情報処理装置にて実行されるプログラムであって、
［１］乃至［７］のいずれか１つに記載の表データ変換方法の各ステップを有する
ことを特徴とするプログラム。
【００２８】
［９］原稿を光学的に読み取って画像データを取得するスキャナと、
前記スキャナで原稿を読み取って得たイメージデータを対象に［７］に記載の表データ変換方法を実行する情報処理装置と、
を有する
ことを特徴とする画像読取装置。
【発明の効果】
【００２９】
本発明に係る表データ変換方法、プログラム、画像読取装置によれば、項目と数値が記述された表データから集計に使用された計算式を導出してその計算式が埋め込まれた表データを出力することができる。
【図面の簡単な説明】
【００３０】
【図１】元の表データと本発明の表データ変換方法で変換した第２表データの一例を示す図である。
【図２】本発明の実施の形態に係る表データ変換方法のプログラムが実行される情報処理装置の概略構成を示すブロック図である。
【図３】本発明に係る表データ変換方法が実行される複合機（画像読取装置）の概略構成を示すブロック図である。
【図４】本発明の表データ変換方法でのデータの流れを示す図である。
【図５】本実施の形態で説明に使用する表データを示す図である。
【図６】図５の表データで使用されている座標系を示す図である。
【図７】図５の表データを数値部と項目部に分離した状態を示す図である。
【図８】項目/数値分離部が行う処理を示す流れ図である。
【図９】抽出キーワードテーブルの一例を示す図である。
【図１０】情報テーブルの一例を示す図である。
【図１１】キーワード該当セルと、これに対応する集計結果格納セルを示す図である。
【図１２】集計結果格納セル特定部が行う処理を示す流れ図である。
【図１３】集計結果格納セルＨ３に対して抽出された算出対象グループ１〜３を示す図である。
【図１４】集計結果格納セルＯ３に対して抽出された算出対象グループ１、２を示す図である。
【図１５】集計結果格納セルＰ３に対して抽出された算出対象グループ１、２を示す図である。
【図１６】集計対象グループ抽出部が行う処理を示す流れ図である。
【図１７】計算結果と元々の値が一部に合致しない場合に作成された情報テーブルの一例を示す図である。
【図１８】計算式置き換え部が行う処理を示す流れ図である。
【図１９】計算式置き換え部が生成した第２表データを所定の表計算プログラムで読み込んだ際の表示画面の一例を示す図である。
【図２０】計算式を含まない表データを所定の表計算プログラムで読み込んだ際の表示画面の一例を示す図である。
【図２１】合計が直接数値で記述された表データに「渡辺」の列を追加する編集を加えた場合の手間を示す図である。
【発明を実施するための形態】
【００３１】
以下、図面に基づき本発明の実施の形態を説明する。
【００３２】
本発明に係る表データ変換方法では、格子状にマス目(以後、セルと呼ぶ)が配列された表データの中の項目名として「合計」「平均」等の特定のキーワードが使用されている場合に、そのキーワードが使用されているセル（キーワード該当セル）と同じ“行”(横方向)または“列”（縦方向）に含まれる数値が登録されているセルを、「合計」のキーワードに対応する集計結果が格納されるセル（集計結果格納セル）に特定し、該集計結果格納セルの数値を、他のセルを参照する計算式に置き換える、もしくは、計算式による計算結果と元々そのセルに登録されていた数値が一致しない場合に、ユーザに計算結果が不一致となる旨を通知して警告する。
【００３３】
たとえば、図１（ａ）に示す表データが入力された場合、同図（ｂ）に示すように、「合計」のキーワードに対応する集計結果が格納される集計結果格納セルと、その集計結果を求める際の集計範囲を特定して、ＳＵＭ（Ｂ２：Ｄ２）のような計算式を求め、該計算式を集計結果が登録されていた該当のセルに挿入して第２表データを生成する。
【００３４】
計算式が挿入された第２表データを表計算プログラムに読み込めば、各セルの数値を書き換えたり、行や列を追加したり削除したりする編集を行っても、計算結果が自動的に更新されるようになる。
【００３５】
図２は、本発明の実施の形態に係る表データ変換方法およびそのプログラムが実行される情報処理装置１０の概略構成を示すブロック図である。情報処理装置１０は、ＣＰＵ(Central Processing Unit)１１に、ＲＡＭ(Random Access Memory)１２、ＲＯＭ（Read Only Memory）やハードディスク装置などで構成された記憶部１３、ネットワーク通信部１４、入力Ｉ／Ｆ部１５、出力Ｉ／Ｆ部１６などを接続して構成される。
【００３６】
ＣＰＵ１１はマイクロプロセッサを有し、ＯＳプログラムをベースとし、その上で、ミドルウェアやアプリケーションプログラムを実行する。記憶部１３には、本発明に係る表データ変換方法のプログラムのほか各種のプログラムが格納されている。ＣＰＵ１１はこれらのプログラムに従って各種の処理を実行する。ＲＡＭ１２は、ＣＰＵ１１が処理を実行する際に表データやその他の各種データを一時的に格納するワークメモリとして使用される。
【００３７】
ネットワーク通信部１４は、ネットワークを通じて外部装置と通信する機能を果たす。入力Ｉ/Ｆ部１５は、デジタルカメラやスキャナなどの外部装置から画像（イメージデータ）等を取り込む機能を果たす。また、キーボードやマウスなどユーザの操作を入力するための機器が接続される。出力Ｉ/Ｆ部１６は、液晶モニタなどのディスプレイ、プリンタなどが接続される。
【００３８】
図３は、本発明に係る画像読取装置としての機能を含む複合機３０の概略構成を示すブロック図である。原稿を光学的に読み取ってその複製画像を記録紙に印刷するコピー機能、読み取った原稿の画像データをファイルにして保存したり外部端末へネットワーク３を通じて送信したりするスキャン機能、印刷サーバ１０からネットワーク３を通じて受信した印刷ジョブに基づいて記録紙上に文書や画像を印刷して出力する印刷機能などを備えた装置である。
【００３９】
複合機３０は、当該複合機３０の動作を統括的に制御するＣＰＵ３１を備えている。ＣＰＵ３１、ＲＡＭ３２、記憶部３３、画像処理部３４、画像読取部３５、操作パネル３６、印刷部３７、ネットワーク通信部３８等が接続されている。
【００４０】
ＣＰＵ３１は、ＯＳ（Operating System）プログラムをベースとし、その上で、ミドルウェアやアプリケーションプログラムなどのプログラムを実行する。
【００４１】
記憶部３３は、ＲＯＭ、ハードディスク装置、不揮発メモリなどで構成され、本発明に係る表データ変換方法を実行するためのプログラムや各種のプログラム、各種のデータが記憶される。ＣＰＵ３１がこれらのプログラムに従って各種の処理を実行することで複合機３０としての機能が実現される。ＲＡＭ３２は、ＣＰＵ３１がプログラムを実行する際のワークエリアとして使用される。
【００４２】
画像処理部３４は、画像の拡大縮小、回転などの処理、画像データの圧縮、伸張処理などを行う。
【００４３】
画像読取部３５は、所謂、スキャナであり、原稿を光学的に読み取って画像データを取得する機能を果たす。
【００４４】
操作パネル３６は、表示部３６ａ、操作部３６ｂを備えている。表示部３６ａは、液晶ディスプレイなどで構成され、各種の操作画面、設定画面などを表示する機能を果たす。操作部３６ｂは、スタートボタンなどの各種操作スイッチ、表示部３６ａの表示面上に設けられたタッチパネル等で構成される。タッチパネルは、タッチペンや指などで押下された座標位置を検出する。
【００４５】
印刷部３７は、印刷データに応じた画像を記録紙上に画像形成する機能を果たす。ここでは、記録紙の搬送装置と、感光体ドラムと、帯電装置と、レーザーユニットと、現像装置と、転写分離装置と、クリーニング装置と、定着装置とを有し、電子写真プロセスによって画像形成を行う、所謂、レーザープリンタとして構成されている。印刷部３６は他の方式でもかまわない。
【００４６】
ネットワーク通信部３８は、ネットワークを通じてユーザ端末や各種の外部装置との間で通信する機能を果たす。
【００４７】
本発明に係る表データ変換方法、プログラムは、図２、図３に示す装置等で実行される。
【００４８】
図４は、本発明の表データ変換方法での各処理およびデータの流れを示している。集計表等の記述された原稿をスキャナや複合機３０の画像読取部３５で読み取って得た画像データが入力される。入力された画像データは、画像解析処理部４１で表の部分が抽出され、さらに罫線や文字、数値がＯＣＲ、ＩＣＲ技術等によって分離、認識され、格子状にセルが配列された表データが出力される。この表データは、所定の表計算プログラムで処理可能な形式のデータである。
【００４９】
表データでは元の画像データに記述されていた項目名や数値は文字コードに変換されて各セルに入力されている。なお、本発明では、スキャナで読み取って得た画像データに代えて、別途の画像解析処理部で処理されて生成された表データを入力データとしてもよい。
【００５０】
表データは、まず、項目／数値分離部４２によって、数値部のセルと項目部のセルに分離される（分類ステップ）。次に、表データは、集計結果格納セル特定部４３で処理される。集計結果格納セル特定部４３は、「小計」「合計」などのキーワードを検出するキーワード検出処理４３ａ（検出ステップ）、検出したキーワードに対応する演算種別(関数)を特定する演算種別特定処理４３ｂ（第１特定ステップ）、「合計」等のキーワードが検出されたセルと同一の行または列にあって集計結果が格納されるセル（集計結果格納セル）を特定する集計結果格納セル特定処理４３ｃを行う。
【００５１】
次に、表データは、算出対象グループ抽出部４４で処理される。算出対象グループ抽出部４４は、算出対象グループ抽出処理４４ａおよび仮集計結果算出処理４４ｂを行う。算出対象グループ抽出処理４４ａは、集計結果格納セルに格納する集計結果を算出する際の１または複数の集計範囲の候補である算出対象グループ(仮集計範囲）を抽出する。仮集計結果算出処理４４ｂは、抽出した各算出対象グループについて、算出対象グループを集計範囲として演算種別特定処理４３ｂで特定した演算種別の計算を行った場合の計算結果（仮集計結果）を求める。
【００５２】
次に、表データは計算式置き換え部４５で処理される。計算式置き換え部４５は、集計範囲決定処理４５ａ、計算式作成処理４５ｂ、挿入通知処理４５ｃを行う。集計範囲決定処理４５ａは、仮集計結果算出処理４４ｂが算出した各算出対象グループに対する計算結果と表データに元々記入されていた数値との整合性から、いずれか１つの算出対象グループを集計範囲に決定する。計算式作成処理４５ｂは、集計範囲決定処理４５ａが決定した集計範囲と演算種別特定処理４３ｂで特定した演算種別とから計算式を作成する（計算式作成ステップ）。挿入通知処理４５ｃは、計算式作成処理４５ｂが作成した計算式を該当のセル（集計結果格納セル）に挿入する処理（挿入ステップ）、もしくは、計算結果が元々記入されていた数値と一致しない場合は、その旨の警告をユーザに通知する処理（通知ステップ）を行う。計算式置き換え部４５は、最終的な処理結果として、集計結果格納セルに計算式が挿入された第２表示データを出力する。
【００５３】
集計結果格納セル特定処理４３ｃと算出対象グループ抽出処理４４ａと仮集計結果算出処理４４ｂと集計範囲決定処理４５ａで、集計結果格納セルと集計範囲を特定する第２特定ステップが構成される。
【００５４】
以後、図４に示す各部４２〜４５の動作を詳細に説明する。
【００５５】
図５は、以後の説明に使用する表データ５０を示している。表データ５０は、田中、佐藤、山田の３名のそれぞれについて４月から翌年３月までの１年分の売上を集計した集計表である。４月から９月までの売り上げを上期の小計として集計し、１０月から翌年３月までの売り上げを下期の小計として集計し、さらに上期と下期を合せた１年分の売り上げを合計として集計した結果が登録されている。
【００５６】
表データ５０では、上期の情報が登録されているセルは第１の背景色、下期の情報が登録されているセルは第２の背景色になっている。また、集計対象者の氏名が登録された領域のセルと、上期の情報が登録された領域のセルと、下期の情報が登録された領域のセルと、通期の合計が登録された領域のセルとを区切る罫線は他の罫線と異なる種類（２重線）にされている。
【００５７】
図６は、表データ５０で使用される座標系を示している。左上を原点とし、横方向の座標はＡ、Ｂ、Ｃ、Ｄ、…で表され、下方向の座標は１、２、３、４、…で表される。たとえば、上期、４月、田中の売り上げが記述されたセルの座標は「Ｂ３」と表記される。
【００５８】
まず、項目/数値分離部４２は、入力された表データ５０の各セルの値（文字、数値）を解析し、数値部のセルと項目部のセルに分離（分類)する。図７は、図５の表データ５０を数値部と項目部に分離した状態を示している。
【００５９】
図８は、項目/数値分離部４２が行う処理を示す流れ図である。まず、数値のみで構成されるセルがＭ行Ｎ列（Ｍ、Ｎは１以上の任意の整数）の矩形状に配列されている矩形領域を数値部として抽出し（ステップＳ１０１）、次に、数値部と同一の“行”もしくは“列”にあって、数値部を除く領域を項目部として抽出する（ステップＳ１０２）。なお、項目部は、数値部に隣接するセルのみとしてもよい。
【００６０】
次に、集計結果格納セル特定部４３の動作を説明する。図９は、キーワード検出処理４３ａが検出すべきキーワードと、そのキーワードに対応する演算種別が対応付けて登録された抽出キーワードテーブル６０の一例を示している。抽出キーワードテーブル６０には、検出すべきキーワードとして、「小計」、「合計」、「平均」、「標準偏差」などが登録されている。また、「小計」および「合計」のキーワードに対する演算種別として「ＳＵＭ」が、「平均」に対する演算種別として「ＡＶＥＲＡＧＥ」が、「標準偏差」に対する演算種別として「ＳＴＤＥＶＡ」が登録されている。演算種別は、表計算プログラムで使用される「関数」を表す文字列となっている。
【００６１】
集計結果格納セル特定部４３のキーワード検出処理４３ａは、項目部の各セルの値と、抽出キーワードテーブル６０に登録されている各キーワードが完全一致、もしくは部分一致するセルをキーワード該当セルとして抽出し、抽出したキーワード該当セルの座標を、情報テーブル７０(図１０参照)に登録する。表データ５０の場合、上期の小計のセル（Ｈ２）と下期の小計のセル（Ｏ２）と、合計のセル（Ｐ１）がキーワード該当セルとして抽出される（図１１参照）。
【００６２】
演算種別特定処理４３ｂは、各キーワード該当セルについて、そのキーワード該当セルに含まれるキーワードに対応する演算種別を、抽出キーワードテーブル６０を参照して特定し、該特定した演算種別を、そのキーワード該当セルに対応付けて情報テーブル７０に登録する。表データ５０の場合、「小計」のキーワードを含むキーワード該当セルＨ２、Ｏ２、「合計」のキーワードを含むキーワード該当セルＰ１のいずれについても、演算種別として「ＳＵＭ」が登録される(図１０参照)。
【００６３】
さらに集計結果格納セル特定処理４３ｃは、キーワード該当セルと同一の“行”もしくは“列”に存在する数値部の各セルを、そのキーワード該当セルに対応する集計結果を格納する集計結果格納セルに特定し、該集計結果格納セルの座標を、そのキーワード該当セルに対応付けて情報テーブル７０に登録する。
【００６４】
図１１に示すように、キーワード該当セルＨ２については、これと同じ列にある数値のみのセルＨ３、Ｈ４、Ｈ５が集計結果格納セルとなる。そして、図１０に示すように、キーワード該当セルＨ２に対応付けてＨ３、Ｈ４、Ｈ５の各セルが集計結果格納セルとして情報テーブル７０に登録される。
【００６５】
また、図１１に示すように、キーワード該当セルＯ２については、これと同じ列にある数値のみのセルＯ３、Ｏ４、Ｏ５が集計結果格納セルとなり、図１０に示すように、キーワード該当セルＯ２に対応付けてＯ３、Ｏ４、Ｏ５の各セルが集計結果格納セルとして情報テーブル７０に登録される。
【００６６】
さらに、キーワード該当セルＰ１については、これと同じ列にある数値のみのセルＰ３、Ｐ４、Ｐ５が集計結果格納セルとなり（図１１参照）、キーワード該当セルＰ１に対応付けてＰ３、Ｐ４、Ｐ５の各セルが集計結果格納セルとして情報テーブル７０に登録される(図１０参照)。
【００６７】
図１２は、集計結果格納セル特定部４３が行う処理を示す流れ図である。抽出キーワードテーブル６０に登録されているすべてのキーワードについて処理が完了するまで、以下の処理を繰り返す。
【００６８】
着目するキーワードについて、項目部の全セルについてチェックが完了するまで以下の処理を繰り返す。まず、着目するキーワードと着目する項目部のセルのセル値が完全一致（もしくは部分一致）するか否かを調べ（ステップＳ２０１）、不一致の場合は（ステップＳ２０１；Ｎｏ)、このセルについての処理を終了する。
【００６９】
キーワードと項目部のセルのセル値が完全合致（もしくは部分合致）する場合は（ステップＳ２０１；Ｙｅｓ）、該セルをキーワード該当セルとしその座標を情報テーブル７０に登録し(ステップＳ２０３)、このセルについての処理を終了する。
【００７０】
次に、集計対象グループ抽出部４４の動作を説明する。集計対象グループ抽出部４４の算出対象グループ抽出処理４４ａは、集計結果格納セル特定部４３で特定した集計結果格納セルのそれぞれについて、次の処理を行う。すなわち、着目する集計結果格納セルを含む行、もしくは、列のうち、その集計結果格納セルの抽出に使用したキーワード該当セルを含まない方向（集計結果格納セルとキーワード該当セルが同じ列にある場合は行、集計結果格納セルとキーワード該当セルが同じ行にある場合は列を指す：便宜上、「グループ抽出方向」と呼ぶ）に存在する数値部のセルを、下記のような条件によりグループ化し、作成した各グループ（算出対象グループ、仮集計範囲）を構成するセルの情報（グループ構成情報）を、着目する集計結果格納セルに対応付けて情報テーブル７０に登録する。
【００７１】
＜グループ化条件＞
（１）隣接するセル間の罫線の種類が同じ
（２）隣接するセルの背景色が同じ
（３）上記（１）、（２）に付随する条件として、
・集計結果格納セルは算出対象グループから除外しても良い
・集計結果格納セルの組み合わせで、算出対象グループとしても良い
・集計結果格納セルに隣接する数値部のグループのみとしても良い
・グループ化条件は、複数のパラメータ（条件）を組み合わせても良い
【００７２】
たとえば、図１３に示すように、集計結果格納セルＨ３については、セルＨ３の左側に連続するセル間の罫線が同じ種類のセルＢ３〜Ｇ３を算出対象グループ１とし、セルＨ３の右側に連続するセル間の罫線が同じ種類のセルＩ３〜Ｏ３から集計結果格納セルＯ２を除外したもの（セルＩ３〜Ｎ３）を算出対象グループ２とし、さらに算出対象グループ１と算出対象グループ２を組み合わせたものを算出対象グループ３として抽出する。
【００７３】
また、図１４に示すように、集計結果格納セルＯ３については、セルＯ３の左側に連続するセル間の罫線が同じ種類のセルＩ３〜Ｎ３を算出対象グループ１とする。また、セルＯ３の左側に連続するセルであって集計結果格納セルＨ３を算出対象グループから除外して、セル間の罫線が同じ種類のセルをグループ化すると、セルＩ３〜Ｎ３とＢ３〜Ｇ３が算出対象グループ２として選出される。Ｏ３の右側には数値部のＰ３があるが、これは集計結果格納セルであるため除外すると、右側には算出対象グループは存在しない。
【００７４】
図１５に示すように、集計結果格納セルＰ３については、セルＰ３の右側にセルはない。セルＰ３の左側に連続するセル間の罫線が同じ種類のセルＩ３〜Ｏ３から集計結果格納セルＯ３を除外したセル（Ｉ３〜Ｎ３）を算出対象グループ１とする。また、セルＰ３の左側に連続するセルであって集計結果格納セルＨ３およびＯ３を算出対象グループから除外して、セル間の罫線が同じ種類のセルをグループ化すると、セルＩ３〜Ｎ３＋Ｂ３〜Ｇ３が算出対象グループ２として選出される。
【００７５】
集計対象グループ抽出部４４の仮集計結果算出処理４４ｂは、情報テーブル７０に登録されている各集計結果格納セルについて、着目する集計結果格納セルに対応付けされているそれぞれの算出対象グループを集計範囲として、着目する集計結果格納セルに対応付けされている演算種別の計算を行って計算結果を求める。そして、それぞれの計算結果が表データ５０の着目する集計結果格納セルに元々登録されていた数値と一致するか否かを確認し、その確認結果を着目する集計結果格納セルに対応付けて情報テーブル７０の値比較結果の欄に登録する。
【００７６】
たとえば、図１０の、集計結果格納セルＨ３の場合、算出対象グループ１についてＳＵＭ（Ｂ３：Ｇ３）の計算を、算出対象グループ２についてＳＵＭ（Ｉ３：Ｎ３）の計算を、算出対象グループ３についてＳＵＭ（Ｂ３：Ｇ３）＋ＳＵＭ（Ｉ３：Ｎ３）の計算を行う。そして、それぞれの計算結果が表データ５０のセルＨ３に元々登録されていた数値と一致するか否かを確認し、その確認結果を、着目する集計結果格納セルＨ３に対応付けて情報テーブル７０の値比較結果の欄に登録する。この例では算出対象グループ１を集計範囲とした場合の計算結果と元々の数値が合致するので、情報テーブル７０のＨ３に対応付けされた値比較結果の欄に「（１）と合致」が登録される。
【００７７】
図１６は、集計対象グループ抽出部４４が行う処理を示す流れ図である。情報テーブル７０に登録されている全ての集計結果格納セルに対する処理が完了するまで以下の処理を繰り返す。
【００７８】
まず、着目する集計結果格納セルのグループ抽出方向に存在する数値部を所定のグループ化条件に従って算出対象グループを抽出し（ステップＳ３０１）、各算出対象グループを構成するセルの情報（グループ構成情報）を情報テーブル７０に登録する(ステップＳ３０２)。
【００７９】
そして、作成した全ての算出対象グループに対して処理が完了するまで以下の処理を繰り返す。まず、着目する算出対象グループを構成するすべてのセルの値を、この算出対象グループに対応付けられている演算種別で計算する(ステップＳ３０３)。そして、その計算結果が着目する集計結果格納セルに元々登録されている数値と合致するか否かを確認し、確認結果を情報テーブル７０に登録する（ステップＳ３０４）。
【００８０】
次に、計算式置き換え部４５が行う処理につて説明する。計算式置き換え部４５の集計範囲決定処理４５ａは、情報テーブル７０に登録されているそれぞれの集計結果格納セルについて、その集計結果格納セルに対応付けて情報テーブル７０の値比較結果の欄に登録されている確認結果に基づいて集計範囲を決定する。すなわち、着目する集計結果格納セルに対応付けて情報テーブル７０に登録されている算出対象グループのうち、計算結果と元々の数値とが合致する算出対象グループを、その集計結果格納セルに挿入する計算式で使用する集計範囲に決定する。
【００８１】
計算式作成処理４５ｂは、情報テーブル７０に登録されているそれぞれの集計結果格納セルについて、その集計結果格納セルについて集計範囲決定処理４５ａで決定された算出対象グループを集計範囲とし、その集計結果格納セルに対応付けされている演算種別で計算式を作成する。たとえば、図１０に示す情報テーブル７０の集計結果格納セルＨ３の場合、対応する値比較結果が「算出対象グループ１と合致」なので、集計範囲は算出対象グループ１を構成するセルＢ３〜Ｇ３に決定される。集計結果格納セルＨ３に対応する演算種別は「ＳＵＭ」なので、集計結果格納セルＨ３に対応する計算式としてＳＵＭ（Ｂ３：Ｇ３）が作成される。
【００８２】
ここで、表データ５０が正しければ、１つのキーワード該当セルに対応するすべての集計結果格納セルについて、値比較結果の欄に格納されている確認結果が、同じ算出対象グループで合致、になるはずである。たとえば、表データ５０、情報テーブル７０におけるキーワード該当セルＨ２の場合、このキーワード該当セルＨ２に対応するすべての集計結果格納セルＨ３、Ｈ４、Ｈ５において、値比較結果欄に格納された確認結果が「算出対象グループ１と合致」のようになるはずである。
【００８３】
ここで、算出対象グループを構成するセルの座標（ただし、グループ抽出方向の座標は無視する、表データ５０の場合、行方向の座標が一致すればよく、列方向(縦方向)の座標は無視する）が同一の場合、同じ算出対象グループと判断する。たとえば、グループ抽出方向が列の場合、Ｂ３〜Ｇ３のセルで構成される算出対象グループ、Ｂ４〜Ｇ４のセルで構成される算出対象グループ、Ｂ５〜Ｇ５のセルで構成される算出対象グループは同じ算出対象グループと判断する。
【００８４】
表データ５０が正しくなければ、値比較結果欄に格納されている確認結果は、計算結果と元々格納されていた数値が合致する算出グループがないことを示す「合致せず」となったり、１つのキーワード該当セルに対応する複数の集計結果格納セルで、対応する値比較結果の欄に格納されている算出対象グループが同じ算出対象グループにならなかったりする。
【００８５】
そこで、計算式置き換え部４５は、１つのキーワード該当セルに対応する複数の集計結果格納セルに対応付けられている値比較結果欄に格納されている確認結果の状況に応じて、集計結果格納セルに計算式を挿入したり、計算結果と元々の値が不一致となったことをユーザに通知したりする。
【００８６】
詳細には、下記の処理１〜処理４のいずれか１つ、もしくは複数を行う。いずれの処理を行うかは、事前に設定されてもよいし、その都度、ユーザから選択を受けるようにしてもよい。
【００８７】
（処理１）一のキーワード該当セルに対応する集計結果格納セルの全部または一部において、その集計結果格納セルに対応付けられている値比較結果欄に格納されている確認結果が、その集計結果格納セルに元々格納されていた値と計算式による計算結果とが合致することを示し、かつ、その計算式で集計範囲にされた算出対象グループが同じ場合は、その全部または一部の集計結果格納セルの値を該当の計算式に置き換える。なお、全部のみに限定してもよい。
【００８８】
（処理２）一のキーワード該当セルに対応する集計結果格納セルの一部のみにおいて、その集計結果格納セルに対応付けられている値比較結果欄に格納されている確認結果が、その集計結果格納セルに元々格納されていた値と計算式の計算結果とが合致することを示し、かつ、その計算式で集計範囲にされた算出対象グループが同じ場合に、計算結果と元々の値が合致しなかった集計結果格納セルについては、計算ミスやＯＣＲでの誤認などの可能性があるとして、その旨のエラー情報を追記する。
【００８９】
（処理３）一のキーワード該当セルに対応する集計結果格納セルの一部において、その集計結果格納セルに対応付けられている値比較結果欄に格納されている確認結果が、その集計結果格納セルに元々格納されていた値と計算式の計算結果とが合致することを示し、かつ、その計算式で集計範囲にされた算出対象グループが同じ場合に、計算結果と元々の値が合致しなかった集計結果格納セルについては、そのセルの背景や文字色を変更する等し、計算ミスやＯＣＲでの誤認などの可能性がある旨をユーザに通知する。
【００９０】
（処理４）一のキーワード該当セルに対応する集計結果格納セルの一部において、その集計結果格納セルに対応付けられている値比較結果欄に格納されている確認結果が、その集計結果格納セルに元々格納されていた値と計算式の計算結果とが合致することを示し、かつ、その計算式で集計範囲にされた算出対象グループが同じ場合に、計算結果と元々の値が合致しなかった集計結果格納セルの値を、計算ミスやＯＣＲでの誤認などの可能性があるとして、ＰＣ等の画面上にその旨のエラー情報を表示させる。
【００９１】
たとえば、図４に示す一連の処理で、図１７に示す情報テーブル７０Ｂが作成された場合、キーワード該当セルＨ２に対応する集計結果格納セルＨ３、Ｈ４、Ｈ５のうち、Ｈ３に対応する値比較結果とＨ４に対応する値比較結果が共に「（１）と合致」となっているので、Ｈ３とＨ４には、算出対象グループ１を集計範囲とする計算式を埋め込む。Ｈ５に対応する値比較結果は「合致せず」になっているので、Ｈ５のセルには、計算ミス等の可能性を示すエラー情報を表示等する。
【００９２】
なお、計算式を挿入する機能を計算式置き換え機能、不一致等のエラーをユーザに通知する機能を通知機能とする。計算式置き換え機能や通知機能は個別にＯＮ／ＯＦＦを設定することができる。
【００９３】
図１８は、計算式置き換え部４５が行う処理の流れを示している。計算式置き換え機能、通知機能のいずれかがＯＮか否かを調べ(ステップＳ４０１)、いずれもＯＦＦの場合は（ステップＳ４０１；Ｎｏ）、本処理を終了する。
【００９４】
計算式置き換え機能、通知機能のいずれかがＯＮの場合（ステップＳ４０１；Ｙｅｓ）、すべてのキーワード該当セルについて完了するまで以下の処理を繰り返し行う。
【００９５】
まず、計算式置き換え機能がＯＮか否かを調べ(ステップＳ４０２)、ＯＮならば（ステップＳ４０２；Ｙｅｓ）、着目するキーワード該当セルに対応する１つ以上の集計結果格納セルの値が、計算式による計算結果と合致するか否かを判断する(ステップＳ４０３)。
【００９６】
合致する場合は（ステップＳ４０３；Ｙｅｓ）、該当の集計結果格納セルの値をその計算式に置き換えて（ステップＳ４０４）、ステップＳ４０５に移行する。合致しない場合は（ステップＳ４０３；Ｎｏ）、ステップＳ４０５に移行する。
【００９７】
ステップＳ４０５では、通知機能がＯＮか否かを判断する。通知機能がＯＦＦならば（ステップＳ４０５；Ｎｏ）、着目するキーワード該当セルに対する処理を終了する。
【００９８】
通知機能がＯＮならば（ステップＳ４０５；Ｙｅｓ）、着目するキーワード該当セルに対応する一部の集計結果格納セルの値が、計算式による計算結果と異なるか否かを判断する(ステップＳ４０６)。異なる場合は（ステップＳ４０６；Ｎｏ）、計算ミス等の可能性がある旨をユーザに通知して（ステップＳ４０７）、このキーワード該当セルに対する処理を終了する。異なるものが無い場合は（ステップＳ４０６；Ｎｏ）、このキーワード該当セルに対する処理を終了する。
【００９９】
図１９は、計算式置き換え部４５が生成した第２表データを所定の表計算プログラムで読み込んだ際の表示画面の一例を示している。第２表データでは、集計結果格納セルに計算式が埋め込まれている。そのため、図１９に示すように、該当のセル（図１９の例ではＨ３のセル）を選択すると、そのセルに埋め込まれている計算式が関数表示欄８１に表示される。従来の変換では計算式が埋め込まれないので、図２０に示すように、Ｈ３のセルを選択しても、そのセルに格納されている数値が関数表示欄８１に表示され、計算式は表示されない。
【０１００】
このように、本発明によれば、表データの中に「合計」「平均」等の特定のキーワードが使用されたセルがある場合に、そのセルを含む“行”または“列”にあって数値が登録されたセル（集計結果格納セル）に、該当の計算式を作成して挿入した第２表データを生成するので、該第２表データを表計算プログラムに読み込めば、各セルの数値を書き換えたり、行や列を追加したり削除したりする編集を行っても、計算結果が自動的に更新されるようになり、再編集を行う際のユーザ負担を大幅に軽減することができる。
【０１０１】
また、ＯＣＲでの誤認識の可能性がある箇所をユーザに通知するので、変換時のエラーを容易に見つけて修正することが可能になる。
【０１０２】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【０１０３】
演算種別（関数）やこれに対応するキーワードは実施の形態に例示したものに限定されない。たとえば、「最大値」「最小値」「数値の数」などでもよい。
【０１０４】
集計結果格納セルに計算式を挿入したり、計算結果と元々の値が不一致となったことをユーザに通知したりする処理は、実施の形態で説明した処理１〜処理４に限定されるものではない。たとえば、一のキーワード該当セルに対応する複数の集計結果格納セルの全てで、計算式の計算結果と元々の数値とが合致する算出対象グループが無い場合は、エラーを通知する。また、一のキーワード該当セルに対応する複数の集計結果格納セルのうちの一部で計算結果と元々の数値とが合致する場合に、この合致した計算式に対応する計算式（同じ算出対象グループを使用した計算式）を、合致しなかった集計結果格納セルにも挿入しつつ、エラーの通知を行うようにしてもよい。
【符号の説明】
【０１０５】
１０…情報処理装置
１１…ＣＰＵ
１２…ＲＡＭ
１３…記憶部
１４…ネットワーク通信部
１５…入力Ｉ／Ｆ部
１６…出力Ｉ／Ｆ部
３０…複合機
３１…ＣＰＵ
３２…ＲＡＭ
３３…記憶部
３４…画像処理部
３５…画像読取部
３６…操作パネル
３６ａ…表示部
３６ｂ…操作部
３７…印刷部
３８…ネットワーク通信部
４１…画像解析処理部
４２…項目／数値分離部
４３…集計結果格納セル特定部
４３ａ…キーワード検出処理
４３ｂ…演算種別特定処理
４３ｃ…集計結果格納セル特定処理
４４…算出対象グループ抽出部
４４ａ…算出対象グループ抽出処理
４４ｂ…仮集計結果算出処理
４５…計算式置き換え部
４５ａ…集計範囲決定処理
４５ｂ…計算式作成処理
４５ｃ…挿入通知処理
５０…表データ
６０…抽出キーワードテーブル
７０、７０Ｂ…情報テーブル
８１…関数表示欄
【図１】
0006680052.tif 000002
【図２】
0006680052.tif 000003
【図３】
0006680052.tif 000004
【図４】
0006680052.tif 000005
【図５】
0006680052.tif 000006
【図６】
0006680052.tif 000007
【図７】
0006680052.tif 000008
【図８】
0006680052.tif 000009
【図９】
0006680052.tif 000010
【図１０】
0006680052.tif 000011
【図１１】
0006680052.tif 000012
【図１２】
0006680052.tif 000013
【図１３】
0006680052.tif 000014
【図１４】
0006680052.tif 000015
【図１５】
0006680052.tif 000016
【図１６】
0006680052.tif 000017
【図１７】
0006680052.tif 000018
【図１８】
0006680052.tif 000019
【図１９】
0006680052.tif 000020
【図２０】
0006680052.tif 000021
【図２１】
0006680052.tif 000022