プロが教えるわが家の防犯対策術!

Access2000で以下の問題に対応することは出来ませんか?
・1つのファイルの作業中に、別の作業者が別のパソコンからファイルを開き、データ入力すると(ファイルを開き入力出来てしまう)、入力したデータの一部が消えてしまう(もしくは入力されていない状態でファイルがセーブされてしまうかも)ことがあります。されないこともあります。
・希望として、別々のパソコンから開く時に、後から開いた作業者に対しては「読み取り専用」で開かせる。また、入力したデータが消えないようにすることは出来ませんか?

A 回答 (1件)

排他モードで開くと、他の人がデータベースを開く事ができないようにする事ができます。



Access 2000 でデータベースを排他モードで開く方法
http://support.microsoft.com/kb/880250/ja

このページで書かれている「既定の開くモード」は、mdb ファイルではなく Access (アプリケーション) の設定になります。
つまりその設定を行った PC から開くデータベースは常に「排他モード」で開くようになりますが、他の PC から開いた場合はその CP の設定による、ということになります。

だからといって全 PC で排他モードにしてしまうと大変な事になりますから、気をつけてくださいね。
私見ですが、ご自身が「自分の作業中に他の PC から変更されては困るデータベース」を開く時に排他モードで開く (一時的に排他モードで開く) のがいいかなと思います。

※ Excel の場合は「ブックの共有」をオンにしていると複数の人が同時に開き、同時に編集する事も可能ですが、Access では「データベース」というシステムの性格上そのような機能はありません。

データベースが排他モードで開かれている時に他の PC からそのデータベースを開こうとしても、「そのデータベースは既に開かれている」という表示が出て開けなくなります。

> 入力したデータの一部が消えてしまう

Access のテーブルに入力されるデータは、レコードにデータが入力され、最後のフィールドにカーソルがある状態で Enter キーが押下される (レコードの入力を終了する)、ユーザーの操作で別のレコードに移動する、といったタイミングで「保存 (反映)」されます。

ある人がレコードへ入力中なのに他の人が同じレコードに先にデータ入力して確定してしまうと、そのレコードに入力できなくなりエラーになります。
データが消えてしまうのではなくて、入力できなくなってしまうというのが正しい理解かなと思います。

Access でのデータ入力は Excel など他のソフトでは普通に常識として使う「上書き保存」のような、ユーザーの意思で保存を行うというのとちょっと違います。
ですので、感覚として捉えにくいという部分もあるかもしれませんね。

自分が編集中に他の作業者が開くと読み取り専用にする...というのはすみません、ちょっとわかりませんでした。m(_ _)m
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!