データベースが壊れて使用できません

このQ&Aのポイント
  • ACCESS2000を使用しています。最近データベースが毎日のように壊れ業務がすすみません。
  • フォームに配置した他のフォームや印刷プレビューを開くボタンをクリックすると突然「直前の操作はキャンセルされました」と表示されます。一旦データベースを閉じて同じ操作をすると今度は「モジュールがありません」と表示され、このあとはすべてのボタンが操作不能になります。フォームのボタンからではなく直接「レポート」を開こうとしても同じです。
  • 空のデータベースを作り、この中にすべてのオブジェクトをコピーして作り直すと直後は直ったかようになりますが、2、3回目に開いた時、今度は別のボタンが壊れたりしてまた似たような状態になります。
回答を見る
  • ベストアンサー

データベースが壊れて使用できません

ACCESS2000を使用しています。 最近データベースが毎日のように壊れ業務がすすみません。 症状 ・フォームに配置した他のフォームや印刷プレビューを開くボタンをクリックすると突然「直前の操作はキャンセルされました」と表示されます。(たった1分前に普通に動いていたのに!) 一旦データベースを閉じて同じ操作をすると今度は「モジュールがありません」と表示され、 このあとはすべてのボタンが操作不能になります。フォームのボタンからではなく直接「レポート」を開こうとしても同じです。 ・空のデータベースを作り、この中にすべてのオブジェクトをコピーして作り直すと直後は直ったかようになりますが、2、3回目に開いた時、今度は別のボタンが壊れたりしてまた似たような状態になります。 ・「最適化/修復」もかけましたが効果はありません。 使用形態 ・データ件数は1000件弱。 ・テーブルとフォームなどその他のオブジェクトは切り離し、ともにネットワークサーバにおいて使用していますが、これを使っているのは3人だけです。 ・データベースを開くとき特定のフォームを自動表示させています。これにはサブフォームを使い割とたくさんのコントロールを配置しています。 ・2、3年前からこのような形態で使用していますが、壊れることは滅多にありませんでした。 しかし4月くらいから不調になることが多くなり、先週からは「使うたびに壊れる」といった感じでにっちもさっちもいかなくなりました。 ホトホト疲れました。一体何が原因でしょうか? どうぞよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • vantage
  • ベストアンサー率60% (310/514)
回答No.3

↓ この現象ではないでしょうか? “根本的な回避策はありません”らしいですが・・・。

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;416357
ohdorry
質問者

お礼

そうですか。残念です。 リンク先に書いてあることを実行してみました。 2、3日様子をみてみることにします。 ありがとうございました。

その他の回答 (2)

  • taknt
  • ベストアンサー率19% (1556/7783)
回答No.2

ハードディスクが損傷しているということは、ないのでしょうか? ま、損傷してたら、別の現象が発生するかな? マシンを変えて使用しても ダメなのでしょうか?

ohdorry
質問者

お礼

そういえば、フォームをコピーしている他の2人は私ほどそれほど壊れることはないようですね。 スキャンディスクをかけてみることにします。

  • happypoint
  • ベストアンサー率36% (521/1422)
回答No.1

こんにちは。 データベースの開発者に聞いたほうが早いような気がします。 ここでは原因究明は無理なのでは。

ohdorry
質問者

お礼

開発者というのは・・・? このデータベース自体を作成したのは私なのですが?

関連するQ&A

  • Access:サブフォームにクエリ表示⇒フィールドを絞り込みたい

    Access2003 WinXP です。 フォームにサブフォームを置き、サブフォームのソースオブジェクトにクエリを参照しているデータシート形式のフォームを設定しています。 フォームに絞込み条件を選択するオプションボタン、表示するフィールドを選択するオプションボタンを配置し、 サブフォームへ表示するコマンドボタンを置いています。 この設定を選択した後コマンドボタンを押すと、クエリの中身を書き換えています。 で、実行すると、表示しない設定のフィールドには「Name?」という値が入ったフィールドがしっかり表示されてしまいます。 ソースオブジェクトにクエリ自体を設定すれば回避出来ますが、表示されたデータをダブルクリックするとその1レコードを表示する画面を更に開きたいと思っていますので、サブフォームにデータシート形式のフォームをセットするのがダブルクリックイベントを取得出来て良いかと思っています。 分かりにくい説明ですみません。 何か解決法を分かる方いらっしゃいましたら、お願いします。

  • Access VBAでメインフォームとサブフォームを印刷するには?

    現在Access VBAを使用して開発をしております。 (Accessのバージョンは2003です。) メインフォームとサブフォームから成る画面があります。 以下、フォーム内に配置されているコントロールです。 <メインフォーム> ・コンボボックス(DB非連結) ・検索ボタン ・画面印刷ボタン <サブフォーム> ・表形式フォーム(DB連結) 画面の機能としては、メインフォームの検索ボタンをクリックしたら、 メインフォームのコンボボックスで選択されているデータに 該当するデータをサブフォーム内に表示しています。 この状態で画面印刷ボタンをクリックしたら 印刷プレビュー画面を表示しています。 ●サブフォームのデータは印刷プレビューで表示されているのですが、 メインフォームのコンボボックスで選択されたデータが表示されなくて 困っております。 メインフォームのコンボボックスをサブフォーム内に配置すれば 印刷プレビューで表示できるようになるのかもしれませんが、 できればメインフォーム上に配置しておきたいのです。 何か良い方法をご存知の方、ご教授いただきたく思います。 よろしくお願いします。

  • データベースが何も表示されない。

    VB2008を使用しています。 フォームにDataGridViewを配置し、データソースをアクセスに置いてあるテーブルを設定したのですが デバッグするとデータが空です。(フィールドは表示される) よく見るとデバッグボタンを押した瞬間に データベースエクスプローラーのところにバツマークが付きます。 (図を参照) これが原因でしょうか? なぜバツマークが付くのでしょうか? しかしデバッグしても何もエラーは発生しません。 「最新の情報に更新」ボタンを押し接続マークを表示させても、デバッグするとバツマークが付きます。 ご教授よろしくお願い致します。

  • 並べ替えでエラーになる サブフォーム 2007

    現在使っているaccdbファイルがおかしいので助けてください。 フォーム1にサブフォームをはめ込んでいます。 サブフォームは帳票ビューです。 フォーム1を開いて、サブフォームのどのフィールドでも 右クリック→昇順に並べ替える・もしくは降順に並べ替える をすると、 ****************************************************************************** このオブジェクトには、オートメーションオブジェクト 'フィールドYESNO'は含まれません。 オブジェクトのプロパティを設定するか、 メソッドを実行するVisual Basicプロシージャーを実行しようとしましたが これらのプロパティまたはメソッドが使用できません。 オートメーションオブジェクトでサポートされているプロパティまたはメソッドについては、 コンポーネントのドキュメントを参照してください。 ****************************************************************************** と言うエラーになります。 並べ替えは問題なく出来ています。 フィールドYESNOは、YESNO型です。 サブフォームだけを開いて、さっきと同じように並べ替えをすると、問題なく並べ替えが出来ますが サブフォームをはめ込んだフォーム1を開いて並べ替えをすると上記のエラーになります。 普段使用する時は、フォーム1を開いてサブフォームの操作をするので、 フォーム1を開いた状態で エラーを出さずにサブフォームの並べ替えが出来るようになりたいのですが 何を修正すればよろしいでしょうか?

  • オブジェクトをどこでdisposeするか

    オブジェクトをどこで破棄するか こんにちは。C#もしくはVBについてお教え下さい。オブジェクトの破棄をどこですればいいかわからなく、悩んでいます。 フォームには下記のオブジェクトが配置されています。 ・データグリッドビュー ・検索ボタン ・閉じるボタン 動作は下記のようになります。 ・フォームをロード時、データベースにアクセス。データテーブルにデータをセット。グリッドビューに表示。 ・検索ボタン。データベースにアクセス。データテーブルにデータを再びセット。グリッドビューに表示。 ・閉じるボタン。フォームを閉じる。 ・DataTable、DataAdapter、sqlConnectionなどの変数は使い回しています。 質問: これらのオブジェクトを破棄、disposeするのは、どのタイミングですれば良いでしょうか? 閉じるボタンを押された時でしょうか?またフォームの右上にバッテンマークがありますが、これが押された時もdispose処理を入れておいたほうがいいのでしょうか? またはフォームを閉じた時は自動で破棄してくれるのでしょうか? 宜しくお願い致します。

  • ACCESSフォームを常に最前面に表示したい

    ACCESSのフォームを常に最前面に表示したいと思っていましたが、それ以前にデータベースの作り込みのアドバイスをお願いすることが多く、お願いすることを後回しにしていました。しかし、少しでも手間を省きたいと思う様になりましたので、ご指導をお願いできればと思います。 アプリケーション:ACCESSヴァージョン2007 [オブジェクトの設定] デスクトップにデータベースのショートカットを配置し、プロパティーの設定で「実行時の大きさ・・」を最小値にしています。 [気になっていること] 全てのフォームは「ポップアップ」を「はい」にしていますが、Access内のウィンドウに於いては最前面になりますが、ブラウザーなどのアプリケーションを開いたときはその背後に隠れてしまいます。 [実現させたいこと1] 1、Accessのオブジェクトを常に前面に表示させて、他のアプリケーションを全面にしたい時は、フォームの最小化ボタンで最小化させる。 [実現させたいこと2(可能であれば)] 最小化させたAccessのオブジェクトをショートカットキーで表示させることは可能でしょうか。可能であればアドバイスをお願いします。 以上、宜しくお願いします。

  • ACCESS メインFからサブFの値を参照

    サブフォームで集計した値をメインフォームで演算値として使用したいのですができません。 サブフォームのフォームヘッダに集計値を入れるテキストボックスを配置し、メインフォームにサブフォームの集計値を参照するテキストボックスを配置しています。 ほんとうはイベントの実行で直接サブフォームの集計値を使った演算を行いたいのですが出来ないのでメインフォームにテキストボックスを作成しました。 サブフォームの集計値は表示しますが、その値を演算値として使用できないのです。試しにMsgboxでメインフォームのテキストボックスの値を表示させると何も表示しません。 なぜメインフォームのテキストボックスにサブフォームの値は表示できるのにその値を使用できないのでしょうか? 具体的には次の通りです。 <サブフォームに配置したテキストボックス>  名前        :テキスト16  コントロールソース:SUM([枚数〕)  書式        :数値 <メインフォームに配置したテキストボックス>  名前        :テキスト130  コントロールソース:[Foms]![メインフォーム名]![サブフォーム名].Form!テキスト16  書式        :数値 <イベント>   MSGBOX テキスト130       ※何も表示されません!

  • access デザインビュー表示の可不可選択

    よろしくお願いします access2000です データベースウィンドウにおいて 添付写真のように オブジェクトを デザインビューで 表示可能にしたり 表示不可能にしたりするには どこをどのように 操作すればよいか 教えてください 写真では フォームは すべてのオブジェクトが デザインビューに 変換することが 出来ません よろしくお願いします

  • Accessでのサブフォームの操作について

    Accessでのフォームの操作についてお教え下さい。 使用しているバージョンは2010です。 フォームAにボタンを設置し、フォームBを開くようにしました。 フォームAとBはIDで連携し、指定したレコードを開くようにしています。 フォームBには、サブフォームCがあります。 サブフォームCには複数のレコードが入っており、 こちらも指定したレコードを表示させてたいのですが方法が分かりません。 フォームAに設置したボタンを押すと、フォームBの指定したレコードを開き、 フォームB内にある、サブフォームCの指定したレコードを表示させたいです。 VBA等で制御することは可能でしょうか。 可能でしたら方法をお教え下さい。 宜しくお願いいたします。

  • サブフォームのビューを切り替えたい

    親フォーム(フォーム1)にサブフォームとして、 テーブルをソースとするサブフォーム(テーブル1のサブフォーム)を配置しました。 親フォームからサブフォームのビューを変更したいのですが どうすればいいか教えてください。 親フォームのコマンドボタンにはそれぞれ Private Sub 単票フォームへ切り替え_Click() Me.Controls("テーブル1のサブフォーム").Form.DefaultView = 1 '帳票フォーム End Sub Private Sub 帳票フォームへ切り替え_Click() Me.Controls("テーブル1のサブフォーム").Form.DefaultView = 0 '単票フォーム End Sub としたのですが、 実行すると 実行時エラー 2136 "このプロパティを設定するには、フォームまたはレポートをデザインビューで開きます"。 となってしまいます。 Private Sub 帳票フォームへ切り替え_Click() DoCmd.SelectObject acForm, "テーブル1のサブフォーム" DoCmd.RunCommand acCmdFormView End Sub にしたところ、 実行時エラー 2489 “オブジェクト テーブル1が開いていません、” になります。 サブフォームに埋め込んでいて親フォームを開いていても 開いてない事になるのですね。 フォームビューの時に、切り替える事は不可能なのでしょうか? 帳票ビュー表示用フォーム、 単票ビュー表示用フォーム を作るしかないのでしょうか?

専門家に質問してみよう