• ベストアンサー

Access(VBA)で「App.path」

Access(VBA)で「App.path」を使用しようとしたところエラーになりました。 Call fnFileWrite2("d:\test110.txt", … 上の形だと上手くいくのですが、下の形だと上手くいきません Call fnFileWrite2(app.Path & "\test110.txt", … Access(VBA)で「App.path」の代わりになる命令はあるのでしょうか?

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

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

近いのは、 Currentdb.Nameですね。 これによりMDBのフルパス名が手に入りますので、そこからコードでフォルダ名の部分だけを切り出してやります。 Call fnFileWrite2(GetDir(CurrentDB.Name) & "test110.txt", … Public Function GetDir(strPathName As String) As String 'ファイル名も含めたパス名からディレクトリ部分抜き出す  Dim i As Long  Dim strS As String * 1  For i = Len(strPathName) To 1 Step -1   strS = Mid$(strPathName, i, 1)   If strS = "\" Or strS = ":" Then    GetDir = Left$(strPathName, i)    Exit For   End If  Next i End Function

absurd0rt
質問者

お礼

返事が遅れて済みません。回答ありがとうございます。 実は先輩のSEの方にも同じ方針でコードを教えていただきました。 SQLのconvert(SQLServer)とto_Date(Oracle)の様な形で 「App.path」にもそのままで使える似たような命令があればと 期待していたのですが、残念ながら無さそうですね。 「App.path」が使えるのは当たり前だと勝手に思いこんでいただけに 回答していただいて助かりました。