
AccessVBAの処理落ちで困っています。
開発環境は
Office 2003 Access
OSはWindowsServer2003 Standard Edition(VM Ware上で稼働)、データベースは別に用意したAccess2003MDBファイルです。
処理概要は
データベース上の業務データが登録されているテーブル(以後テーブル1と呼ぶ)のデータ(主キー)を元にデータベース上の商品単価が登録されているマスタテーブル(以後マスタ1と呼ぶ)のデータを抽出し、テーブル1に金額をセットするものです。
業務データは月毎に約4000件存在します。
金額のセット処理はレコードセットを用い、テーブル1の該当する月のデータ件数分繰り返し行います。
テーブル1の金額フィールドにテーブル1のデータを主キーとして用い、マスタ1の該当する金額を抽出し、セットしなければならないのですが、金額が正しく登録されている物と全く違う金額が登録されている状態が発生しています。
テストデータは
例:2009年4月分のデータのみ(テーブル1、マスタ1共に)
という状態でテストしています。
作成したソースコードをチェックしてみましたがロジック上は
何処にも異常は見当たりません。
ループの中でソースコードの命令外の処理が行われているようにしか思えません。
説明が分かり辛ければ申し訳ありません、ご指摘頂ければ補足します。
どなたかこの現象についてご存じの方はご教授願えませんでしょうか?
どうか宜しくお願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示

No.2
- 回答日時:
Access のバグという可能性は・・・クエリ文なども含めて、
msdn.microsoft.com
で調べるというのもありかとおもいます。
1.まずは手元で再現させて、再現する場合としない場合を見つける
これに尽きます。
そこから、あやしそうなところをデバッグすればよいです。
コードだけみていてもダメです。
複数ユーザでアクセスしたときに再現するとか、、
ある特定のクライアントマシンで再現するとか、、
No.1
- 回答日時:
Accessで落ちることはよくあることですが、原因はほとんどがプログラムミスです。
ソースコードのチェックでロジック上異常がないとのことですが、1ステップづつ実行して変数やテーブルのフィールドの値を確認しながらチェックしたにもかかわらず突然金額フィールドの値が変わったのでしょうか。
もしそうなら、申し訳ありませんが分かりかねますので以下は無視してください。
そうでなければ、デバッグの仕方を工夫してみてはどうでしょうか。
まずは現象をはっきりさせることが必要です。
・すべてのデータの金額フィールドが変わるのか、特定のデータだけ変わるのか、それとも実行するごとに変わるデータが変化するのか。
金額フィールドが変わるデータが判明したら、ソースコードのどのステップで変わるかを調べます。
・ソースコードの特定のステップで金額フィールドが変わるのか、それとも不定(処理ごとに違うステップで変わる)なのか。
データ量が多い場合は、極端に減らしてからデバッグしてみてください。
特定のステップで金額フィールドが変わる場合は、プログラムミスかAccessのバグかは分かりませんが、その箇所のコードが原因ですので別のロジックに変えれば直るかもしれません。
そうでなければお手上げです、申し訳ありません。
あと、ご存知とは思いますが、Accessはイベント駆動型のプログラム言語です。
ですので、思ってもいないところで予想外の処理が実行されることが多々あります。
たとえば、ある処理のあるステップを実行した直後、その次のステップを実行する前に別の処理が実行されることがあります。
特にデータベースを操作している場合や画面の操作をしている場合に多いです。
デバッグする際は、いま現在どの処理が実行されているのかを常に監視しておく必要があります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
商蔵奉行 エクセルによる汎用...
-
EXCELでバーコードを作成すると...
-
エクセル バーコード作成で他の...
-
バーコードってダブらない?
-
バーコードコントロールが印刷...
-
顧客CDのCDって?
-
読み取ったQRコード/バーコード...
-
エクセルマクロでバーコードを...
-
Excelでバーコードリーダーで読...
-
マクロでバーコードのリンクセ...
-
物流用語
-
電子請求書を送ったら原紙をほ...
-
ACCESSでNW-7バーコードの高さ...
-
dポイントカードでdポイントを...
-
エクセルで「3次元配列」表の...
-
差し込み印刷のバーコードを小さく...
-
振込請求書が破れてしまいました
-
コンビニでの話です。 ある客が...
-
レシートにバーコード
-
エクセルの数式で教えてください。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ホストとオフコンの違い
-
商蔵奉行 エクセルによる汎用...
-
音楽業界のCD売上、タイトル数...
-
新住所をカーナビに掲載したい
-
量予測の手法について
-
Accessは、職場で必要な...
-
iタウンページの電話番号や住...
-
Access2007:フォームからに誤っ...
-
シーケンサーとパソコンの接続
-
CSVデータ又はエクセルのデータ...
-
4店舗の 在庫状況を 随時 ...
-
データベースの作成について
-
エクセル2007の検索機能
-
Access VBA 処理 落ち 不具合
-
個人のプライバシーの面からし...
-
ナンバーディスプレイとポップ...
-
大規模言語モデルは今後どのよ...
-
JAN、価格、売れ行き この3情報...
-
エクセルでの顧客管理
-
データ加工業者
おすすめ情報