私はAccess 2010を使用して小さなプログラムを構築していますが、フォルダーを確認するには以下の方法を使用しています。存在しない場合は作成してください:VBAルックアップフォルダにアクセスしてifが存在しない場合はDLOOKUP
'need code to create folder
If Dir("C:\Michael\Test", vbDirectory) = "" Then
MkDir ("C:\Michael\Test")
Else
'do nothing for directory already exists
End If
ただし、これを変更する必要があります。パスは、ユーザーが選択した内容に応じて変更できます。現時点では、パスは構築され、フィールド( "FlatFile")のテーブル( "tmpDestFolders")に保存されます。
実際には、この値が何であっても検索する必要がありますが、以下は機能しません。どのようにしてフィールド値が何であるかをチェックするように変更できますか?私はエラー76無効なパスを受け続ける:単に、その後
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Long
と::
'need code to create folder
If Dir(DLookup("FlatFile", "tmpDestFolders"), vbDirectory) = "" Then
MkDir (DLookup("FlatFile", "tmpDestFolders"))
Else
'do nothing for directory already exists
End If
"FlatFile"に無効なパスが含まれていると、そのエラーが表示されます。だからあなたは何を見ますか? – Gustav
"FlatFile"はパス全体を含む。 c:\ test \ stuff \ things – Michael
元のコードのパスをそのパスに置き換えるとどうなりますか? – Gustav