本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[ACC2]マルチユーザー環境下でインポートする場合のエラー回避方法

文書番号: 404040

最終更新日: 1998/02/06


この資料は以下の製品について記述したものです。

この記事は、以前は次の ID で公開されていました: JP404040

概要

マルチユーザー環境でデータのインポートをした場合に、エラーの発生する現象とその回避方法を紹介します。

現象

現象

複数のクライアントからデータベースを共有する環境で、あるクライアントがモジュールを実行しているときに、別のクライアントがインポート処理を行うと、
  「マシン 'XXX' のユーザー 'Admin'によってロックされているため、
   保存できませんでした。」
というエラーメッセージが表示され、インポートできません。

回避方法

Access 2.0 の機能上、このエラーメッセージを出さないようにすることはできません。
この現象を回避する方法を 2 つご紹介します。
  方法 1 :手作業でインポートの操作を行っている場合には、他のクライアントで
          実行中のモジュール処理が完了したのち、再度インポートを実行してくだ
          さい。
  方法 2 :マクロでインポートを行っている場合には、 Access Basic でインポーを
          するプロシージャを作成してください。
          プロシージャでは、ON ERROR ステートメントでエラー発生時に、エラーを
          トラップするロジックを作成してください。
          エラーをトラップした後に、再度インポートをしてください。
以下にサンプルプロシージャを紹介します。
プロシージャ内で行の右端にある_(アンダースコア) は、次の行に続くことを示します。
実際にプロシージャにコードを入力する場合は、_(アンダースコア) を消して継続して入力してください。
  ----------------------------------------------------------------------------
  Function ImportTest ()
      On Error GoTo ErrTrap
   TBL_IMPORT:
      DoCmd データベース変換 A_IMPORT, "Microsoft Access", "c:\other.mdb",     _
           A_TABLE, "テーブル 1", "tbl2", True
      Exit Function
   ErrTrap:
      If Err = 3186 Or Err = 3187 Then
          Resume TBL_IMPORT
      Else
          MsgBox "エラー番号 = " & Err & Chr$(13) & Chr$(10) & Error$
          Exit Function
      End If
  End Function
  ----------------------------------------------------------------------------

Keywords: KBBUG KB404040
Technology: kbAccess200 kbAccessSearch

inserted by FC2 system