• ベストアンサー

ACCESSの初歩的な質問です。

ACCESSの初歩的な質問です。 1.ACCESS2003を使っています。 2.プログラムとテーブルを別ファイルに分割しています 3.プログラムとテーブルファイルはネットワークドライブ上の同一フォルダ上においています。 ここで質問です。 3の場所を、変更すると、つどテーブルのリンク先情報を手作業で変更せねばなりません。 これは煩雑なので、参照先パスを「同一ディレクトリ」として相対的に指定することはできますか? ご教示いただけると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • noriki-fu
  • ベストアンサー率100% (1/1)
回答No.4

Left(CurrentDb.Name, InStrRev(CurrentDb.Name, "\", , vbBinaryCompare) - 1) 以上でプログラムファイルがあるディレクトリパスが取得できますので Left(CurrentDb.Name, InStrRev(CurrentDb.Name, "\", , vbBinaryCompare) - 1) & "\テーブル.mdb" とすれば、テーブルファイルのパスが取得できます。 あとは、プログラムファイルの起動時などに、リンクテーブルのリンク先を更新すれば良いです。 以下はリンクテーブルのリンク先を更新するプログラムの一例です。 DoCmd.DeleteObject acTable, "*リンクテーブル名*" DoCmd.TransferDatabase acLink, "Microsoft Access", "*リンク先MDBファイルのパス*", acTable, "*リンクテーブル名*", "*リンクテーブル名*"

その他の回答 (3)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

一応確認ですが、httpsで始まるネットワーク ではなく、\\で始まるというネットワークという 認識いいのですか。

  • layy
  • ベストアンサー率23% (292/1222)
回答No.2

環境変数を使えばアクセス側システム内にあるフォルダ記載を修正する必要が無くなります。 環境変数の使用例を確認してみて下さい。環境変数そのものは前からある手法です。 あと、ODBCとかも参考。

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

以下の参照先がヒントになりますか。 http://www.accessclub.jp/bbs2/0014/beginter04798.html

関連するQ&A

専門家に質問してみよう