次の方法で共有

Accessシステムへのデータインポート時に使用している workbook.open メソッドが反応しなくなった件

Anonymous
2021-06-14T04:15:46+00:00

Accessによる社員データベースシステムを運用中です。

複数台のPCにて日々増えていく社員のインポート作業

(インポート対象データはcsvファイルで自動データ生成&テーブル保存)を行っています。

ある日複数台あるPCのうち1台のPCだけエラー等表示も画面の変化もなく

インポートのプログラムが停止しているような現象となりデバッグで確認したところ

workbook.open メソッドが反応せずにインポート対象のCSVファイルが開けていない

状態となっていることを確認しました。

他PCと違うような構成でもなくそのような症状になる理由が一切不明で

考えられる要因が見当たらないのですが何か原因究明のカギをご存じの方がいれば

お聞かせいただきたく質問させていただきました。

どうぞよろしくお願い申し上げます。

「クライアントPC」

・Windows 10

・Office 2016

Accessデータは社内NASに保管され、

インポートデータもAccessデータと同じ階層のフォルダに格納の上でインポート作業を実行する

Microsoft 365 と Office | アクセス | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

Anonymous
2021-06-29T03:06:26+00:00

> こちらについて検証いたしましたが> やはり動作いたしませんでしたので> NASとの接続の問題はなく、> ローカルPC側のVBAの問題になりそうです。

・Access 側からのオートメーションを正常に実行できない。

・Excel ブックのモジュールから Workbooks.Open メソッドを
 実行しようとしてもそのファイルを開けない。

・コードの実行によってではなく、普通に Excel で
 その CSV ファイルを開こうとしても開けない。

ということなのであれば、今のところはその実行環境か、
読み込もうとしているファイルに由来する現象なのではないかと思います。

> 早急に解決ができる考えられる対策としては> > Officeの入れ直し> それがダメなら最終手段としてOS再インストールかと思われますがいかがでしょうか。

ただ、具体的にどのようなプロシージャを記述されているのか
( Workbooks.Open メソッドを含む全てのコード)が不明なままですし、
また「workbook.open メソッドが反応しなくなった」という表現だけでは、
以下に示すどの現象に該当しているのかも分かりませんので
断定は致しかねます。

・Open メソッドを呼び出した際に何らかの実行時エラーが発生する。
 (具体的なエラー番号やメッセージは不明)

・Open メソッドを呼び出した時点からコードの実行が先へ進まない。
 ( Excel 側で何らかのシステムメッセージが表示されているため
 コードの実行が一時停止している、CSV ファイルを開くのに異常に時間がかかる、
 Excel アプリケーションがフリーズまたはクラッシュするなど)

もし本当に実行環境に由来する不具合なのであれば、そうされることが
最も確実だろうとは思いますが、まあ最終手段ですね。

この回答は役に立ちましたか?

1 人がこの回答が役に立ったと思いました。
0 件のコメント コメントはありません

5 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2021-06-30T01:42:01+00:00

    sk.exe 様

    お世話になっております。

    詳しくお返事をいただきありがとうございます。

    >・Access 側からのオートメーションを正常に実行できない。
    →Workbooks.Open メソッドを含むAccess側からExcel側への指令は試行していません。

    >・Excel ブックのモジュールから Workbooks.Open メソッドを
    > 実行しようとしてもそのファイルを開けない。
    →これは試行していません。

    >・コードの実行によってではなく、普通に Excel で
    > その CSV ファイルを開こうとしても開けない。
    →これは可能です。

    >ということなのであれば、今のところはその実行環境か、
    >読み込もうとしているファイルに由来する現象なのではないかと思います。

    →他PC端末では現象起きていないのでファイルの問題ではないと考えています。

    >ただ、具体的にどのようなプロシージャを記述されているのか
    >( Workbooks.Open メソッドを含む全てのコード)が不明なままですし、

    →申し訳ございません。こちら前後の絡みを公開することができません。

    >・Open メソッドを呼び出した際に何らかの実行時エラーが発生する。
    > (具体的なエラー番号やメッセージは不明)

    →実行時エラーは発生しません。実行したプログラムが長時間完了しないため

     中断した際にWorkbooks.Open メソッドの箇所で停止していることを確認している状況です。

    >もし本当に実行環境に由来する不具合なのであれば、そうされることが
    >最も確実だろうとは思いますが、まあ最終手段ですね。

    →一先ず原因究明より現象の改善が最優先な状況となりましたので再インストールを試みます。

     また、ご報告させていただきます。

    親身になって色々ご教示をいただきありがとうございます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2021-06-29T01:03:26+00:00

    sk.exe 様

    お世話になっております。

    大変遅くなり申し訳ございません。

    >また、各ファイルを NAS ではなくローカルドライブに置いた場合の
    >動作検証を行なわれることもお奨めします。

    こちらについて検証いたしましたが

    やはり動作いたしませんでしたので

    NASとの接続の問題はなく、

    ローカルPC側のVBAの問題になりそうです。

    早急に解決ができる考えられる対策としては

    Officeの入れ直し

    それがダメなら最終手段としてOS再インストールかと思われますがいかがでしょうか。

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

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2021-06-14T08:18:02+00:00

    sk.exe 様

    ご回答をいただきありがとうございます。

    下記に引用符を付けてお返事差し上げます。

    >> 複数台のPCにて日々増えていく社員のインポート作業>> (インポート対象データはcsvファイルで自動データ生成&テーブル保存)を行っています。

    *>*ここでおっしゃっている「インポート作業」が
    *>*DoCmd.TransferText メソッドの呼び出しだけを指しているのか、
    *>*それ以外の何らかの命令(を含んだ一連の処理)の実行を意味する表現なのかが不明瞭です。

    ここでの「インポート作業」はCSVファイルをExcelで開き、

    データの配置やデータの内容をインポート用に作り変える動きをVBAで行っています。

    DoCmd.TransferText メソッドの呼び出しだけではありません。

    >> ある日複数台あるPCのうち1台のPCだけエラー等表示も画面の変化もなく>> インポートのプログラムが停止しているような現象となりデバッグで確認したところ>> workbook.open メソッドが反応せずにインポート対象のCSVファイルが開けていない>> 状態となっていることを確認しました。

    >「ある CSV ファイルを Access のテーブルにインポートする」という処理において
    *>*何故オートメーションによって Excel を操作するコードを実行されているのかも
    *>*不明ですが、仮にその「インポート作業」において「 CSV ファイルを
    *>*Excel で開く」というプロセスがどうしても必要なのであれば、
    *>*とりあえず同様のコードを Excel ブックのモジュールに記述して実行してみても
    *>*同じ現象が再現されるかどうか(実際にその CSV ファイルを Excel で開くことが出来るのか)を確認されてみてはいかがでしょうか。

    切り分けとして確認してみます。

    >> 他PCと違うような構成でもなくそのような症状になる理由が一切不明で>> 考えられる要因が見当たらない>> Accessデータは社内NASに保管され、>> インポートデータもAccessデータと同じ階層のフォルダに>> 格納の上でインポート作業を実行する

    *>*また、各ファイルを NAS ではなくローカルドライブに置いた場合の
    *>*動作検証を行なわれることもお奨めします。

    こちらも切り分けとして確認してみます。

    アドバイスをいただきありがとうございます。

    また確認でき次第お知らせさせていただきます。

    以上

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  4. Anonymous
    2021-06-14T07:17:29+00:00

    > 複数台のPCにて日々増えていく社員のインポート作業> (インポート対象データはcsvファイルで自動データ生成&テーブル保存)を行っています。

    ここでおっしゃっている「インポート作業」が
    DoCmd.TransferText メソッドの呼び出しだけを指しているのか、
    それ以外の何らかの命令(を含んだ一連の処理)の実行を

    意味する表現なのかが不明瞭です。

    > ある日複数台あるPCのうち1台のPCだけエラー等表示も画面の変化もなく> インポートのプログラムが停止しているような現象となりデバッグで確認したところ> workbook.open メソッドが反応せずにインポート対象のCSVファイルが開けていない> 状態となっていることを確認しました。

    「ある CSV ファイルを Access のテーブルにインポートする」という処理において
    何故オートメーションによって Excel を操作するコードを実行されているのかも
    不明ですが、仮にその「インポート作業」において「 CSV ファイルを
    Excel で開く」というプロセスがどうしても必要なのであれば、
    とりあえず同様のコードを Excel ブックのモジュールに記述して実行してみても
    同じ現象が再現されるかどうか(実際にその CSV ファイルを Excel で開くことが

    出来るのか)を確認されてみてはいかがでしょうか。

    > 他PCと違うような構成でもなくそのような症状になる理由が一切不明で> 考えられる要因が見当たらない> Accessデータは社内NASに保管され、> インポートデータもAccessデータと同じ階層のフォルダに> 格納の上でインポート作業を実行する

    また、各ファイルを NAS ではなくローカルドライブに置いた場合の
    動作検証を行なわれることもお奨めします。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません