Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


796 / 2272 ツリー ←次へ | 前へ→

【10083】モジュールがインポートできない・・・ サティ 07/12/6(木) 22:27 発言[未読]
【10084】Re:モジュールがインポートできない・・・ VBWASURETA 07/12/7(金) 0:55 発言[未読]
【10085】Re:モジュールがインポートできない・・・ サティ 07/12/7(金) 9:12 質問[未読]
【10086】Re:モジュールがインポートできない・・・ VBWASURETA 07/12/7(金) 9:31 回答[未読]
【10087】Re:モジュールがインポートできない・・・ サティ 07/12/7(金) 9:49 質問[未読]
【10089】Re:モジュールがインポートできない・・・ Gin_II 07/12/7(金) 10:46 回答[未読]
【10095】Re:モジュールがインポートできない・・・ サティ 07/12/7(金) 16:12 回答[未読]
【10096】Re:モジュールがインポートできない・・・ サティ 07/12/7(金) 16:27 お礼[未読]

【10083】モジュールがインポートできない・・・
発言  サティ  - 07/12/6(木) 22:27 -

引用なし
パスワード
   OS:windowsXP
Access Version:ACCESS2000

oracleの巨大なdbにodbcでリンクを張って作業していたら、
ファイルが肥大化してしまいました。(約2GB!!)

大きなテーブルを削除し、最適化を試みたのですが、ファイルが大きすぎるようで、いくら待っても最適化完了しませんでした。。。

なので、新しいmdbファイルを作成し、すべてのオブジェクトをインポートしました。(このファイルの容量は約3MB)

ここまではいいのですが、フォームの各イベントに紐づいていたモジュールが、何一つインポートされていませんでした。
それどころか、フォームのオブジェクトのプロパティのイベントでモジュールを起動させると、空のVBAウィンドウが表示され、モジュールを書くことができない状態になってしまいました。

とても困っております・・・

どなたかこの解決方法をご存知の方がいましたら、ぜひ教えていただけると幸いです。

よろしくお願い致します。

【10084】Re:モジュールがインポートできない・・・
発言  VBWASURETA  - 07/12/7(金) 0:55 -

引用なし
パスワード
   ▼サティ さん:
こんばんは。

回答ではないですが、もしかすると最適化中に
強制終了されたりしていませんか?
もしされたのでしたら、その影響かも知れません。
修復して逆にエクスポートしてみては?

【10085】Re:モジュールがインポートできない・・・
質問  サティ  - 07/12/7(金) 9:12 -

引用なし
パスワード
   ▼VBWASURETA さん:
>▼サティ さん:
>こんばんは。
>
>回答ではないですが、もしかすると最適化中に
>強制終了されたりしていませんか?
>もしされたのでしたら、その影響かも知れません。
>修復して逆にエクスポートしてみては?

VBWASURETA さん
返信ありがとうございます。

はい・・・
1時間くらい待っても最適化が終わらなく、PCが強制終了(会社のPCは一定時間に強制終了されるので・・・)されてしまう時間になったため、タスクマネージャで自分から強制終了させてしまいました・・・

「修復」とは、どのようにすればよいのでしょうか?

質問ばかりですみませんが、教えてください・・・

【10086】Re:モジュールがインポートできない・・・
回答  VBWASURETA  - 07/12/7(金) 9:31 -

引用なし
パスワード
   ▼サティ さん:
こんにちは。


修復はMDB起動時に確認があると思いますがないですか?
そうなってくると最適化/修復になるのですが。

>1時間くらい待っても最適化が終わらなく、PCが強制終了(会社のPCは一定時間に強制終了されるので・・・)されてしまう時間になったため、タスクマネージャで自分から強制終了させてしまいました・・・

後、勝手に強制終了されるのですか?

少なくとも最適化中に強制終了するのはよくないです。
最悪のケースMDBが修復不可/起動不可にもなったりする場合があります。
2Gぐらいだと時間かかった(マシンスペックにもよると思います)覚え
ありますので、壊れたフォームが1本だけでしたらモジュールを
コピー&ペーストして新しくフォーム作るほうが早いと思います。

【10087】Re:モジュールがインポートできない・・・
質問  サティ  - 07/12/7(金) 9:49 -

引用なし
パスワード
   ▼VBWASURETA さん:

>修復はMDB起動時に確認があると思いますがないですか?
ふつうあるのですか?

この場合、確認はありません。

>後、勝手に強制終了されるのですか?

残業時間対策のようなもので、社内規定で強制終了されてしまいます・・・

>少なくとも最適化中に強制終了するのはよくないです。
>最悪のケースMDBが修復不可/起動不可にもなったりする場合があります。

そうですよね。
強制終了はしたくなかったのですが、やむを得ず(T T)

>2Gぐらいだと時間かかった(マシンスペックにもよると思います)覚え
>ありますので、壊れたフォームが1本だけでしたらモジュールを
>コピー&ペーストして新しくフォーム作るほうが早いと思います。

そうしたいところなのですが、
 オブジェクトを選択
  ⇒プロパティを開く
   ⇒イベントの[イベントプロシージャ]からVBA画面を起動
させると、
「現在実行しているコードはリセットされます。 」
等等、なんらかのエラーメッセージが100%出て、モジュールを記載できないような状態なもので、コピー&ペーストもできない状態なのです。

【10089】Re:モジュールがインポートできない・・・
回答  Gin_II  - 07/12/7(金) 10:46 -

引用なし
パスワード
   >ファイルが肥大化してしまいました。(約2GB!!)
>
>大きなテーブルを削除し、最適化を試みたのですが、ファイルが大きすぎる
>ようで、いくら待っても最適化完了しませんでした。。。

Accessのmdbファイルの制限として、2GBというものがあります。
それを少しでも超えていれば、最適化はできないと思います。

新規ファイルからインポートでダメであれば、既存ファイルからエクスポート
してみるとどうでしょうか?(フォームだけとか)

それでもダメであれば、望みは薄いかもしれませんが、

Access オブジェクトをテキストファイルに変換する方法
http://x7net.com/~access/AcTipsVbaHowToConvertAccObjToText.html

こういった方法を試してみるとか・・・

【10095】Re:モジュールがインポートできない・・・
回答  サティ  - 07/12/7(金) 16:12 -

引用なし
パスワード
   ▼Gin_II さん:
こんにちは。
回答ありがとうございます。

>Accessのmdbファイルの制限として、2GBというものがあります。
>それを少しでも超えていれば、最適化はできないと思います。

限界だったのですね・・・2GBを少し超えたサイズでした。

>新規ファイルからインポートでダメであれば、既存ファイルからエクスポート
>してみるとどうでしょうか?(フォームだけとか)

全て(テーブル・クエリ・フォーム)のオブジェクトを、新しいMDBに、ひとつひとつエクスポートしてみましたが、現象は変わりませんでした・・・

>それでもダメであれば、望みは薄いかもしれませんが、
>
>Access オブジェクトをテキストファイルに変換する方法
>http://x7net.com/~access/AcTipsVbaHowToConvertAccObjToText.html
>
>こういった方法を試してみるとか・・・

なるほど、こういう方法があるのですね・・・
ありがとうございました。

【10096】Re:モジュールがインポートできない・・・
お礼  サティ  - 07/12/7(金) 16:27 -

引用なし
パスワード
   VBWASURETAさん、Gin_II さん、回答ありがとうございました。
助かりました。

マイクロソフトのサイトに、対処方法がありました。
http://support.microsoft.com/kb/304548/ja

しかし、このサイトにある
方法1は、会社のパソコンなのでACCESSのバージョンアップは私の判断ですることはできず、
方法2を試しましたが、現象は変わりませんでした。

結局、ACCEESS2000特有の現象のようなので、以下方法でとりあえずの解決を致しました。

1.肥大化したMDBを、圧縮
2.圧縮したMDBを、ACCESS2002のパソコンに移動
3.解凍
4.ACCESS2002にて、空の新MDBを作成
5.解凍した巨大MDBから、全てのオブジェクトをインポート

ちなみにこれで、2,011,820KB から 198,939KB の大きさになりました!

おふたりとも、本当にどうもありがとうございました。

796 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free