access2007のファイルが開かなく困っております。

異常終了ではなく閉じるボタンで終了し、翌日から開こうとすると「オブジェクト'Databases'がみつかりませんでした。オブジェクトが存在していることと、名前やパス名が正しいことを確認してください」と出てしまい、最適化も受け付けなくなりました。
利用者に聞いても特におかしな事はしていないそうです。

なお環境はwinXPでaccess2007を利用しています。
非常用のバックアップは正常に開いたので本体には問題はないと思われます。

回答の条件
  • 1人2回まで
  • 登録:2008/07/29 17:02:29
  • 終了:2008/08/05 17:05:03

回答(2件)

id:Im_Me No.1

Im_Me回答回数301ベストアンサー獲得回数62008/07/29 18:47:37

ポイント35pt

エンドユーザは基本的に「おかしな事はしていない」と言いますので、鵜呑みにせず、まずは細かい状況を確認するのも手だと思います。

で、データベースの構成が破損している可能性が高いです。

最適化しているという事は、MDBですよね?

ACCESSのMDBは最適化の最中に「X」でぶっちん切りすると結構な確率で壊れます。

方法1:

正常な状態で最適化したファイルを復元する。

運任せですが、ファイル復元ツールなどで、DB1.MDBなどをタイムスタンプを頼りに復元してみる。


方法2:(事前にバックアップを忘れずに!)

1:ldbがあったら消しておく事(邪魔します)

2:SHIFT+ダブルクリックで起動する

3:起動したら、一旦終了時の最適化をはずして終了

  ちゃんとldbが正常に消える事を確認。

4:ダブルクリックで起動してみる。

5:正常に動作する事を確認したら最適化をつけて、終了

6:再度起動テスト

最適化がらみで軽症ならこれで復旧する可能性もあります。

(ただし、復旧後も、運が悪いとMDBのどこかが壊れている可能性はあります。要動作検証)

これでもだめなら、MDBそのものが壊れることは稀でモジュール単位で壊れている可能性が高いので、空のMDBを作って、そちらからインポートでサルベージします。

この際に、壊れたモジュールをインポートする事で、また影響が出る事もありますので、少しづつインポートとバックアップを繰り返すほうが無難。

インポート時にエラーが出たら、そのモジュールは壊れちゃってるので諦めた方が良いかと…


ところで、「非常用のバックアップ」って、壊れてしまったMDBのバックアップですか?

それなら、単純にバックアップしたMDBに入れ替えて、データだけ放り込む方が無難ですが…

http://www.lacknary.jp/service/app_5.html

id:birdtail

ACCESS2007ですのでaccdbファイルとなっています。MDBファイルはありません。

shift+実行でも起動できませんでした。インポートもだめでした。

ユーザーは「何もしてないのに壊れた」という感じですので信用はしていないのですが、私自身ACCESSは始めたばかりで詳しくなく必死で調べています。

バックアップは取るようにしていたのですが壊れたファイルで上書きされてしまったので;;;

かなり前の版のデータしか残っていないのです・・・・

2008/07/29 21:32:15
id:Im_Me No.2

Im_Me回答回数301ベストアンサー獲得回数62008/07/31 09:54:39

ポイント35pt

http://office.microsoft.com/ja-jp/access/HA100678311041.aspx

↑2007のロックファイルはlaccdbとなります。

あと、shift+実行で起動した場合と、インポートしようとしてだめだった場合の状況・メッセージ等は何でしたか?同じ物ですか?

そんな事分かってるよ!といわれるかもしれませんが、念のために、SHIFT+実行は、SHIFTキーから手を離してはダメですよ。

セキュリティ等でアクションを要求されたら、OK等押した後、もう一度SHIFT押しっぱなしです。

ファイル復旧ソフト等もアウトだったのですよね?(あるいは客先環境で適用が無理でしょうか)


プログラムとしてのバックアップが残っていれば、データが何年前のものであろうと、それを使用するのがセオリーかと思います。(データを入れ込む)

なぜなら、前述の通り、復旧できても、PGの中身の保障はできないからです。

コードやSQLが「綺麗に」壊れている事もあります。

エラーが出れば「おかしい」と分かりますが、綺麗に壊れると、原因と現象を追うのが大変です。



老婆心ながら、この手の問題は、URL必須、コメント欄拒否だと解決し辛いのではないでしょうか?(この返信もできればポイントなんぞ不要のコメント欄で補足したかったのですが…)

「ハイ、これが答えです!」なんて出る事は難しく、ひとつづつ試しては状況を報告しつつ、潰していくしかないと思うので…。

id:birdtail

すみません、何度もありがとうございます。

インポート、SHIFT+実行でもエラーは同じでした。

ファイル復元でロックファイルは救えたのですが、これから助けることはできるのでしょうか?

ご指摘ありがとうございます。設定を変更させていただきました。

2008/07/31 19:05:43
  • id:Im_Me
    ロックファイルはその名の通り、データべースを「ロック」するものです。
    さらに、いちばん最初の手順に書いたとおり、むしろあると邪魔をするので消すくらいです。
    実態ではないので救えません。

    探すのはロックファイルではなくaccdb。最適化の際も同じです。(最適化の段階のファイルはDetabase.mdb)
    一応最適化の基本的な仕組みのリンクを貼っておきます。
    http://office.microsoft.com/ja-jp/access/HA102355831041.aspx


    また、参考までに
    http://support.microsoft.com/kb/209137/
    dbが開けない場合の手段としてJet compact utility があります。
    http://support.microsoft.com/kb/273956/

    しかしいずれも下位バージョンまでが対象で2007はありません
    最新のテクノロジー=安定しない、情報、ツールが圧倒的に不足している、というデメリットはaccessに限ったことではないと思います。
    (最近は販売終了などで、嫌でも最新テクノロジーを使わざるをえないことが多々ありますが)


    どんなデーターベースでも、アプリケーションでも、壊れるときは壊れます。
    accessのようにあっさり壊れることが多いものにデータを保存する危険性は言わずものがな、です。
    一般的にフォームやレポート、コードと、マスタ系データ系のテーブルはdbを分けて構築するのもそれを回避するためです。
    (もちろん、運が悪い時は壊れるのでしょうが、私の場合経験上データのみのdbが壊れた事はありません)


    あとは、accessのdbをしかるべきサービスで復旧依頼するという手もあると思います。
    利用したことがないので、具体的に会社をお勧めする事はできませんが、「復旧access データベース 復旧」で検索してみてください。
  • id:birdtail
    何度もありがとうございますm(__)m

    上記のツールもだめでした。
    エクセルから切り替えてアクセスがもろいことを知りませんでした;;
    よい勉強としてバックアップをいじってデータを分離することにします。

    復旧サービスは費用がかかりそうなので見合わせます。

    いろいろとありがとうございました。
  • id:Im_Me
    DBがどうにも開かない場合の最後の頼みの綱、Jet compact utilityの2007版が出ればもしや…とは思いますが…

    もう試していただいたかもしれませんが、
    EXCELの外部データ取り込みはどうでしょう。
    (多分DBが開かないかぎりダメだとは思いますが…;;)


    お力になれず申し訳ないです。
  • id:birdtail
    EXCELも駄目でした;;
    2007版がを待ちつつMSを恨むことにしますw

    最後までいろいろありがとうございましたm(__)m

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません