我目前有一個數據庫,用於存儲與我的數據相關聯的圖片路徑,並使用VBA將它們顯示在圖片框中。它的效果很好,但添加圖片的過程有點繁瑣,用戶難以正確使用它(輸入錯誤的路徑,忘記包含擴展名等)。這會導致數據庫中一堆垃圾條目。我想簡化這個過程。理想情況下,點擊「添加圖片」後,我想打開Windows資源管理器,讓用戶選擇所需的圖片,獲取該圖片的路徑,並將其插入表格中。同樣,我沒有使用OLE,只是路徑的文本字段。這可能嗎?使用Windows資源管理器獲取文件的路徑(字符串)以存儲在表中
回答
正如Remou引用的那樣,可以使用FileDialog對象來完成此操作。對於很多人來說,可能需要添加對MS Office對象庫的引用(Access Library不夠)。我用於從資源管理器中選擇的文件收集路徑名的代碼如下:
Public Sub ShowFileDialog()
Dim dlgOpen As FileDialog
Set dlgOpen = Application.FileDialog(msoFileDialogOpen)
With dlgOpen
.AllowMultiSelect = False
.InitialFileName = "Z:\" 'Initial Path when explorer is opened
.Show
If .SelectedItems.Count = 0 Then
MsgBox ("No file Selected") 'No file selected
Else
Me.txtPath = .SelectedItems(1) 'sets textbox on the form to the path selected
End If
End With
End Sub
謝謝hans。我偶然發現了一個類似問題的答案http://stackoverflow.com/questions/9476268/filedialog-doesnt-work-in-access-2010那裏。它幫了我很多。正如你在我的編輯中看到的那樣,我想擁有文件的絕對路徑,而不僅僅是文件名。你知道如何做到這一點? – Scotch 2012-07-09 17:36:47
擺脫'Dir()'...它只返回你餵它的完整路徑中的文件名。 IOW,試試這個:'Me.txtPath = .SelectedItems(1)' – HansUp 2012-07-09 17:40:48
這是有效的。我會編輯我的答案,包括 - 謝謝。我認爲所有這些都明確地回答了我的問題。 – Scotch 2012-07-09 18:03:58
- 1. 使用Windows資源管理器獲取python文件的路徑
- 2. 在python中使用windows資源管理器瀏覽器存儲文件路徑
- 3. 從Windows資源管理器中捕獲文件夾路徑
- 4. 獲取當前的Windows資源管理器路徑
- 5. 從句柄獲取Windows資源管理器路徑
- 6. 在資源路徑使用字符串
- 7. 在JSF中從託管bean獲取資源文件的路徑
- 8. 字符串資源路徑轉換器
- 9. 如何從從Windows資源管理器拖動到JFrame中的文件中獲取文件路徑
- 10. 使用Windows API Code Pack可以獲取Windows資源管理器的AddresBar路徑嗎?
- 11. 在Windows資源管理器中獲取選定的文件或文件夾
- 12. 獲取從資源管理器菜單到PowerShell變量的文件夾路徑
- 13. Android中的文件資源管理器像Windows資源管理器
- 14. 使用Python COM在Windows資源管理器中選擇文件?
- 15. 在Windows資源管理器
- 16. 在Windows資源管理器
- 17. 如何使用.net獲取Windows資源管理器的位置?
- 18. 在C#中,是否有一種方法可以獲取嵌入資源文件的字符串路徑引用?
- 19. 在Windows資源管理器中指定鍵盤快捷鍵以獲取所選項目的路徑
- 20. 如何獲得一個窗口的完整路徑,在Windows資源管理器
- 21. 如何使用字符串路徑名在WAR中打開資源文件?
- 22. 從Windows資源管理器複製並粘貼路徑文件到變量
- 23. Java - 用JFileChooser存儲表中的字符串路徑,獲取set方法?
- 24. 存儲在txt文件中的文件的資源管理器視圖
- 25. 在Windows資源管理器中添加新字段,使用C#
- 26. 如何使用子路徑獲取資源路徑使用NSBundle
- 27. Java字符串資源的管理
- 28. 對於專家,在Windows資源管理器中捕獲該文件的完整路徑
- 29. 在MFC中獲取資源路徑
- 30. WPF的Windows資源管理器控件?
請參閱http://stackoverflow.com/questions/9105806/how-do-i-store-the-links在ms-access/9105887#9105887 – Fionnuala 2012-07-09 15:52:02
@Remou這似乎是我需要做到這一點。午餐後我會嘗試實施它。我將發佈更新,以及完成後的工作,以供將來參考。 – Scotch 2012-07-09 15:57:45
它給出了一個編譯器錯誤。 Dim dlgOpen中的「用戶定義類型未定義」作爲FileDialog – Scotch 2012-07-09 16:50:46