• ベストアンサー

アクセス(MSAccess)でカレントデータベースのパスを取得するには?

■MS Accessでカレントデータベースのパス(ファイル名まで)を取得できるのでしょうか? [テキストボックス]の[コントロールソース]に使用する場合、 "=CurDir$()"を使えばデータベースのパスまでは取得できますが、 "c:\my documents\data.mdb"といったように、データベース名まで 取得する方法を教えてください。

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

  • ベストアンサー
  • seian
  • ベストアンサー率50% (16/32)
回答No.1

"=CurDir$()" に倣って書けば "=CurrentDb.name" でいいと思います。 でも "=CurDir$()" では文字通り現在のディレクトリを示すだけで そのとき開いているデータベースのパスを示さないのではないでしょうか?

koutaka
質問者

お礼

早速のご回答ありがとうございます。

koutaka
質問者

補足

>そのとき開いているデータベースのパスを示さないのではないでしょうか? "=CurrentDb.name" で十分です。 確かに、カレントディレクトリが変わったら問題なので データベースを開いた時"=CurrentDb.name" を取得して、 テーブルに一度保存します。

関連するQ&A

  • MDBのフルパスを取得するには?

    アクセス97 を 使ってます。 C:\総務\住所録.mdb D:\総務関連\住所録.mdb E:\総務情報\住所録.mdb 上記のような場合 ファイルのフルパス (カレントフォルダ名) C:\総務\ D:\総務関連\ E:\総務情報\ を取得するには どんな関数を使えばよいでしょうか? curdir を 使ってみましたが うまくいきませんでした。

  • VBA カレントディレクトリ取得について

    お世話になってます。 VBAの初心者です。 test.mdbファイルを "C\TEST" という作業ディレクトリ配下において そのmdbのモジュールでCurDirを使用してカレントディレクトリを取得する という処理をVBAで書きたいのですが、 Dim strPath As String strPath = CurDir("C") と記述し実行しても strPathに格納される値は "C\" となってしまいます。 本当は"C\TEST"という値を取得したいのですが、 使用方法が間違っているのか、何が悪いのかよく分かりません。 よろしくお願い致します。

  • EXCELファイルのカレントフォルダを取得するには?

    EXCELファイルのカレントフォルダを取得するには? C:\経理\予算.xls D:\2005年度\予算.xls EXCEL97ファイルがあります。 VBAで   カレントフォルダ名 (C:\経理\,D:\2005年度\) を取得する事は可能でしょうか? CURDIRでは上手い方法が見つかりませんでした。

  • DOSコマンドで相対パスの取得の方法がわかりません。

    ファイルパスが C:\Documents and Settings\ユーザー名\My Documents\My Music を My Music だけを取り出す方法が見つかりません。 どのように操作したら相対パスを取得することができるのでしょうか?

  • My Documentsのパスを取得したい

    コモンダイアログを開いた時にデフォルトでどの端末でもMy Documentsを指定したいです。 My Documentsのパスを取得する方法が知りたいです。 宜しくお願いします。

  • カレント行取得

    Do While Not rs.EOF  If Text1(0).Text <> rs.Fields(1) Then   /*--*--*/   rs.MoveNext     Else   msg = "コードが重複しています."   MsgBox msg, vbOKOnly, "重複チェック"   Text1(0).Text = ""   Text1(0).SetFocus  End If Loop *------ text1(1) = rs.fields(1) text1(2) = rs.fields(2) -------* データベース(Access)にデータが3件入っていて、例えば、1件目のデータを更新したいのですが今のソースでは、/*--*--*/でデータベースを次々読んでいるので、3件読み終えたときにカレント行が4件目にあると思うので、それを”任意”の行にしたいのですが教えてください。

  • アクセスでサブフォームのレコードを取得したい。

    教えてください!!MS accessにてサブフォームのレコードの数やレコードの内容をVBAにて取得したいと考えてます。その結果によって、条件分岐がしたいので・・・。現在は、サブフォームのフッターに=count(*)のテキストボックスを作り、この値を取得しています。もう少しスマートに(直接)取得できないのでしょうか?ちなみに(サブフォームの)コントロール名.form.countでやってみると、違う数字が出てきます。この数字はいったいなんでしょうか? お願いします。

  • アクセス2000 パス名に間違いが。。。

    パス”\\130.~~~~~~~.mdb"は正しくありません。 パス名に間違いがないこととファイルが置かれたサーバーに接続していることを 確認してください というメッセージが出ます。 前任者が作成しているデータベースをおかしくしてしまい、 バックアップでとっていたものを名前を変えて、デスクトップにショートカットでおきました。 それが原因なのでしょうか? 名前を変えてしまうなんて、ありえないことなんでしょうか? ご指導よろしくお願いします。

  • 【VBA-AC2000】カレントプロシージャ名を取得したい

    AC2000+MSSQL2000環境でVBAを使ってアプリケーション開発しています。 エラー時にユーザー定義関数を使ってカレントフォーム名やカレントコントロール名をメールで送るようにしています。 さらに追加して、どのプロシージャでえらーが起こっているのか知りたく、、コードの中でカレントプロシージャ名を取得する方法ってないでしょうか?

  • テキストファイルをAccessへインポートする自動化の記述方法は?

    Accessの画面より、コマンドボタンをクリックして、外部データベース(MDB)にテキストファイルをインポートするプログラムを作っているのですが、記述方法がわかりません。どなたか回答願います。カレントデータベース(mdb)へテキストファイルをインポートするプログラムは作成したことはあります。

専門家に質問してみよう