(57)【要約】【課題】  表計算プログラムの編集モードを共有モードにした場合に使用できなくなるマクロの実行および図の編集を可能にする、排他制御を有したアプリケーションプログラムを提供すること。【解決手段】  ユーザおよびファイルごとにマクロの実行および図の編集状態を管理し、編集対象のファイルがマクロの実行中または図の編集中であるならば一定時間待機の後に再度状態を確認してマクロの実行および図の編集を実行するステップを備える。【選択図】      図２
2015092315.tif 000002
【特許請求の範囲】
【請求項１】
表計算プログラムにおいて編集モードを共有モードにした場合に、ユーザおよびファイルごとにマクロの実行および図の編集状態を管理し、編集対象のファイルがマクロの実行中または図の編集中であるならば一定時間待機の後に再度状態を確認してマクロの実行および図の編集を実行するステップを備えることを特徴とするアプリケーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表計算プログラム（例えばＭｉｃｒｏｓｏｆｔ社のＥｘｃｅｌ）において、排他制御を用いて共有モードでのマクロの実行および図の編集を可能にするアプリケーションプログラムに関するものである。
【背景技術】
【０００２】
Ｍｉｃｒｏｓｏｆｔ社のＥｘｃｅｌ（登録商標）は表計算を行うアプリケーションプログラムであることは、多くの人が知っていることだろう。しかし、Ｅｘｃｅｌは表計算の機能だけでなく図形を組み合わせることで簡単な図を描画することも可能であり、また、組み込まれているマクロを使用することでさまざまな処理を自動化することができる。この特徴を利用してＥｘｃｅｌを単なる表計算としてだけではなく、設計書や進捗管理表などで使用する例もある。
【０００３】
図１はＥｘｃｅｌのファイルを編集するときの概要図であり、Ｅｘｃｅｌ１００で編集されるファイル１０１、ファイルを編集中のユーザ１０２、ユーザ１０２がファイルを編集中にファイルを編集しようとしている他のユーザ１０３から構成されている。
通常はユーザ１０２がファイル１０１の編集を開始した時点でファイル１０１にはＥｘｃｅｌ１００によって排他制御がかけられ、他のユーザ１０３による編集によってファイルの状態に不整合が発生しないようになっている。そのため、他のユーザ１０３はファイル１０１を編集することができず、ユーザ１０２がファイルの編集を完了するまで待たなければならない。
【０００４】
この課題を解決するためにＥｘｃｅｌ１００には共有モードという編集モードが用意されている。編集モードを通常モードから共有モードに切り替えた場合、ユーザ１０２とユーザ１０３が同時にファイル１０１を編集することが可能となり、同じセルに対して編集を行っていたときはファイルを保存するタイミングで他のユーザの編集内容との比較が行われどちらを反映するかを選択する仕様となっている。
本発明に関する公知技術文献としては下記特許文献１があげられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１７９１０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述したようにＥｘｃｅｌには複数人で同一のファイルを編集するための共有モードが存在するが、編集モードを共有モードにすると図の編集およびマクロの実行が使用できなくなる制限がある。そのため、進捗管理表などのように複数人が同時に編集するファイルに図やマクロを使用していた場合、一旦共有モード解除する必要がある。このとき問題となるのがファイルを編集中の他人に対し、作業を中断させてファイルを閉じてもらう必要があることである。編集中のユーザを特定でき、直接の会話やメール、電話などによってファイルを閉じるように依頼できるときは問題ないが、編集中のユーザを特定することができず、強制的に共有モードを解除した場合には他人の編集結果が失われてしまう。
【０００７】
本発明はこのような問題点に鑑みなされたもので、そのの目的は、表計算プログラムにおいて編集モードを共有モードにした場合に使用できなくなるマクロの実行および図の編集を可能にする、排他制御を有したアプリケーションプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明に係るアプリケーションプログラムは、表計算プログラムにおいて編集モードを共有モードにした場合に、ユーザおよびファイルごとにマクロの実行および図の編集状態を管理し、編集対象のファイルがマクロの実行中または図の編集中であるならば一定時間待機の後に再度状態を確認してマクロの実行および図の編集を実行するステップを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、表計算プログラムにおいて編集モードを共有モードにした場合に、ユーザおよびファイルごとにマクロの実行および図の編集状態を管理し、編集対象のファイルがマクロの実行中または図の編集中であるならば一定時間待機の後に再度状態を確認してマクロの実行および図の編集を実行するようにしたため、共有モードにおいて複数人でのマクロの実行または図の編集が可能になる。
【図面の簡単な説明】
【００１０】
【図１】従来の方法でのＥｘｃｅｌファイルの編集方法を示す図である。
【図２】本発明によるＥｘｃｅｌファイルの編集方法を示す図である。
【図３】Ｅｘｃｅｌを編集しているユーザを管理するテーブルを示す図である。
【図４】ユーザの排他制御の処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明を適用した共有モードにおいて複数人でのマクロの実行または図の編集を可能にするアプリケーションプログラムの実施の形態について説明する。
図２は本発明によるＥｘｃｅｌファイルの編集方法を示す図であり、編集されるファイル２０１とＥｘｃｅｌ２００を用いてファイルを編集するユーザ２０２と２０３で構成されている。
【００１２】
ファイル２０１はネットワーク上に存在するファイル、ユーザ２０２または２０３のコンピュータ上に存在するファイルのいずれかであることを想定している。すべてのユーザはファイル２０１を編集する際には直接ファイル２０１を編集するのではなく、まず、本発明に係るアプリケーションプログラム２０４を起動して編集するファイルを選択する。このアプリケーションプログラム２０４はユーザ管理テーブル２０５を備えている。
【００１３】
図３はＥｘｃｅｌを編集しているユーザを管理するテーブル２０５のデータ構造を示す図であり、ユーザ名３０１、ファイル名３０２および実行中フラグ３０３によって構成されている。
ユーザ名３０１にはアプリケーションプログラム２０４を起動したユーザ名、ファイル名３０２にはユーザが編集するファイル名、実行中フラグ３０３は“０”であれば実行中でない、“１”であればマクロの実行中または図の編集中であることを示している。
ユーザ２０２がアプリケーションプログラム２０４を起動すると、アプリケーションプログラム２０４はどのファイルを編集するのかを問い合わせをユーザ２０２に対して行う。
【００１４】
ユーザ２０２がファイル１を選択した場合、ユーザ名３０１の項目にはユーザ２０２の名前が格納され、ファイル名３０２の項目にはユーザ２０２が選択したファイル１の名前“ファイルＡ”が格納され、実行中フラグ３０３には“０”がそれぞれ格納される。
同様に他のユーザ２０３がアプリケーションプログラム２０４を起動した場合は新たにユーザ名３０１、ファイル名３０２および実行中フラグ３０３にデータが格納されていく。このテーブル２０５のデータはユーザが編集を終えてファイルを閉じるまで継続され、ユーザがファイルを閉じたタイミングで該当のユーザのファイルに該当するレコードが削除される。
【００１５】
図４はユーザの排他制御の処理を示すフローチャートである。
ユーザが本アプリケーションプログラム２０４を起動すると、ユーザに対してどのファイルを開くかを問い合わせる。ユーザが編集対象のファイルを選択すると、アプリケーション２０４はユーザ管理テーブル２０５にユーザ名およびファイル名を登録する（ステップ４０１）。その後アプリケーションプログラム２０４はマクロの実行または図の編集が実施されるまで待機状態となり、それらが行われない限り同様の処理を繰り返す（ステップ４０２）。
【００１６】
ユーザによるマクロの実行または図の編集が発生すると本アプリケーションプログラム２０４は編集対象のファイルの実行中フラグが“１”になっているかを確認する（ステップ４０３）。このとき実行中フラグが“１”になっていれば一定時間待機した後に、再度実行中フラグが“１”になっているかを確認する（ステップ４０４）。このとき、「マクロの実行または図の編集を実行中のユーザが居ます」とのメッセージをユーザに対して表示する。
【００１７】
実行中フラグが“１”になっているレコードが存在しなければ、該当するユーザ、ファイルの組み合わせのレコードの実行中フラグを“１”に変更する（ステップ４０５）。
その後、ユーザによるマクロの実行または図の編集を実行する（ステップ４０６）。
ユーザによるマクロの実行または図の編集が完了すれば実行中フラグを“０”に変更する（ステップ４０７）。
【００１８】
以上のように、本実施形態においては、編集モードを共有モードにした場合に、ユーザおよびファイルごとにマクロの実行および図の編集状態を管理し、編集対象のファイルがマクロの実行中または図の編集中であるならば一定時間待機の後に再度状態を確認してマクロの実行および図の編集を実行するようにしたため、共有モードにおいて複数人でのマクロの実行または図の編集が可能になる。
【符号の説明】
【００１９】
１００    表計算プログラム（Ｅｘｃｅｌ）
１０１    編集対象のファイル
１０２    ファイルを編集しているユーザ
１０３    排他制御のためファイルを編集できないユーザ
２０１    編集対象のファイル
２０２    ファイルを編集しているユーザ
２０３    排他制御のためファイルを編集できないユーザ
２０４    アプリケーションプログラム  
２０５    ユーザ管理テーブル
３０１    ユーザ名
３０２    ファイル名
３０３    実行中フラグ
【図１】
2015092315.tif 000003
【図２】
2015092315.tif 000004
【図３】
2015092315.tif 000005
【図４】
2015092315.tif 000006