データベースが一度破損しました。不足しているレポートを元に戻すことができるかどうかは分かりません。
変更を復元する唯一の100%安全な方法は、破損が発生する前から最近のバックアップを取ることです。
しかし、ネットワーク障害が発生したときに、ユーザーがデータベースにアクセス中にとというレポートを同時に変更すると、ファイルが破損する可能性があります。
が、私はそれが今、あなたを助けていないことを知っているが、ここでは、将来のためにいくつかのアドバイスです:あなたはフォームが含まれている(フロントエンドにAccessデータベースを分割について考える必要があります
、レポートとコード)とバックエンド(テーブルのみを含む)があります。
バックエンドはセントラルマシンに配置され、各ユーザーはフロントエンドのコピーを所有します。もちろん分割データベースとフロントエンドが自動的にいくつかの初期の作業が必要になります、ユーザーのマシン上で更新されますが、あなたはそれから2つの利点を獲得することを保証する
:
あなたが前面に働く
- ローカルマシンで作業しているため、ネットワークの停止の影響を受けにくくなります。
- バックエンドが壊れている可能性は低いです。残念なことに、実稼働環境にあるAccessデータベースのレポート、フォーム、コードを同時に変更すると、問題が発生する可能性があります。
さらに、コンピュータでバックアップと復元を設定できない場合でも、バックアップを頻繁に行う必要があります。私はAccessデータベースを手動でコピーするだけで、これを何度もやります(慣れていなくてもこれを自動的に行います)。
EDIT:
さて、それはあなたのデータベースがフロントエンドに分割し、バックエンドで質問からではない、本当に明らかでした。
ネットワークの停止の原因は、あなたが「唯一の中央データベース」を編集していると思ったことです。
私はこれまで自分で何かを経験したことを覚えていないので、あなたができることを推測することができます今。
私の心に来ることの一つは、あなたが文書化されていないSaveAsText
とLoadFromText
コマンドでテキストファイルに(あなたは自分の名前を知っていることを考えると)レポートをエクスポートしようとするかもしれないということです。
'save your report in a text file on your disk
Application.SaveAsText acReport, "YourReport", "c:\YourReport.txt"
'load your report from the text file in another Access database
Application.LoadFromText acReport, "YourReport", "c:\YourReport.txt"
しかし、これは単なるですアイデアなので、これがあなたのケースでうまくいくかどうかはわかりません。
レポートがまだ表示されている(何らかの理由で表示されない)場合もあります。
これは申し訳ありませんが、
正直なところ、私は壊れたデータベースの修復に多くの経験がありません。 )には絶対に挑戦しないので、は頻繁にバックアップを取り、あなたのような状況になることはありません。 LOTS(私はそれのために同僚たちによって「妄想」と呼ばれてきました)。
EDIT 2:私はちょうどのは、破損したデータベースがネットワーク上にあったことを答えるphoogためにあなたのコメントを読み込む
(すなわち、それはネットワーク上にあった間、あなたはそれを編集しました)。将来のために
アドバイス:これまでに、すでに彼の答えで述べたphoogの理由から、このを
をしないでください。データベースがすでにフロントエンドとバックエンドに分割されている場合は、フロントエンドのコピーを作成し、ローカルマシンで編集して、そのような事態が再び発生しないようにします。
さらに、レポートのフロントエンドが複数のユーザーによって使用されている場合は、同じ理由でネットワーク上の同じファイルでそれらのすべてが機能するようにしないでください。
フロントエンドの新しいバージョンがあるときに自動更新を含めて、各ユーザーに自分のコピーを与えることは非常に簡単です。あなたは、私が仕事でこれをやっている方法をここに読むことができます
:アプリケーションが設定されている方法
:
How to automatically update MS-Access 2007 application
実際、私のデータベースはその形式です。クラッシュしたのはフロントエンドデータベース(レポート、クエリ、およびフォーム)でしたが、削除されたアイテムはレポートのみでした(すべて)。 – jerry
@ジェリー:もう一度私の答えを読んで、私は多くのものを追加! –