🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

2回答

12345閲覧

Windows 10(10.0.18362)でAccess2010が異常終了するのを解決したい。

Morning0153

総合スコア9

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2019/09/10 01:41

編集2019/09/11 05:25

発生している問題

Windows10の特定バージョンで、Access2010のモジュール実行中に突然終了してしまう。エラーは出ず、デバッグにもなりません。

同じ動作をさせても、障害が発生しないこともありますが、同じ動作で障害の現象が頻発(ほぼ発生)します。
ブレイクポイントを設定して、トレースしながら実行すると障害発生しません。
Windows7,8.1,10でこれまで動作していました。(Windows10のパソコンでも発生しないものがあります)
複数台のWindows10のパソコンで障害の現象が発生しています。

Windows7,8.1,10環境で、access2010 Runtime 32bitの環境で、同じプログラムで正常動作するモジュールを作成したい。

環境別症状

(1)Microsoft Windows 10 Pro 10.0.18362 + Access2010 Runtime SP2 32bitのパソコンで実行すると発生。Runtime実行の場合メッセージがでて終了します。
「指定したデータベースを見つけることができないか、またはデータベース名が指定されていません コマンドライン引数でデータベース名を指定し、必要に応じて、パス名も含めて指定してください。」というメッセージがでてOKを押すとACCESSが終了してしまいます。

(2)Microsoft Windows 10 Pro 10.0.18362 + Access2010 14.0.7232.5000 32bit のパソコンで実行すると。エラー表示無に突然終了します。

(3) Microsoft Windows 10 Pro 10.0.17134 + Access2010 Runtime SP2 32bitのパソコンでは 障害は発生しません。

(4)Windows7,Windows8.1では障害は発生していません。

開発環境

Windows7のパソコン Microaodt Access2010 Version 14.0.7232.5000(32ビット)で開発したプログラムです。

参照設定は
Visual Basic For Applications
Microsoft Access 14.0 Object Library
OLE Automation
Micorosoft Office 14.0 Access database engine
です。

原因がつかめずにいます。
確認すべきこと、回避策、対処などがありましたら、教えてください。
よろしくお願い申し上げます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Morning0153

2019/09/12 01:32

標題、実施したいことを加筆修正しました。Microsoftのフォーラムにて質問すべき内容で、質問自体がこの場に不適切だったかしらと思います。障害内容解消しました、同現象発生時確認等に役立つことがあるかと解決内容を記載し、削除は行わずにおきます。
guest

回答2

0

自己解決

解決方法
DAOにてデータベースに接続しており、ユーザー関数(モジュール内)でデータベースの接続時、
Set db = CurrentDb()にて接続していました。
このdbはPublicで宣言しており、関数を呼び出す元のFORMでもSet db = CurrentDb()にて接続して、closeしない状態で、モジュールをよびだしていました。
これを、モジュール内は、プライベイトで定義した別名のデータベース(db2)に変更し、db2 = CurrentDb()
にすることで、解決しました。

ユーザー関数は、クエリ内や、フォーム、レポートなどで呼び出す関数となるため、データベースに接続済みか否かの判定を入れて動作させる分岐が複雑になるので、プライベイトで別に定義して、接続し、関数内でcloseするように変更しました。
PUBLICのdbは、フォームや、レポートで、利用時に接続してcloseしています。

異常終了は、ユーザー関数を呼び出した時はいつも、ということでなく、同じ操作をすると同じところで
異常終了していました。関数を繰り返し使用しているうちに、壊れてしまうということだったのかと思われます。

ありがとうございました。

投稿2019/09/11 05:08

編集2019/09/12 01:59
Morning0153

総合スコア9

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Windows Updateの問題で不具合になるケースがあるのでその辺りを調べて、
最新の状態になっているかの確認、問題のありそうな更新プログラムのアンインストール等を行うなどお試しになればいいかもしれません。

投稿2019/09/10 02:07

tera_taro

総合スコア46

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Morning0153

2019/09/11 05:14

情報 ありがとうございます。 DAOの接続の定義を変更して解消できました。不必要な接続を重ねて行うと、これまでは発生していなかったが、今回障害の発生したバージョンだと異常終了してしまったということかと思われます。 解消できてほっとしました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問