我有一个库存/联系人数据库,需要在其中存储大量图像(10k 件物品,1k 人)。现在,由于纯粹的膨胀,显然 ole 对象是不可能的。
有没有更好的方法来做到这一点,例如存储图像的路径(将存储在数据库的文件夹中)并在我需要的地方显示该图像(这会很棒,因为有些项目是重复的)?有办法做到这一点吗? (另外,我真的需要一个文件浏览器来查看实际图像,而不是手动输入路径(那将是地狱))
这里有一个概念
Sub Locate_File()
Dim fDialog As Office.FileDialog
Dim file_path As String
Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
With fDialog
'Set the title of the dialog box.
.Title = "Please select one or more files"
'Clear out the current filters, and add our own.
.Filters.Clear
.Filters.Add "All Files", "*.*"
'Show the dialog box. If the .Show method returns True, the
'user picked at least one file. If the .Show method returns
'False, the user clicked Cancel.
If .Show = True Then
file_path = .SelectedItems(1)
Copy_file(file_path,Right(file_path, Len(file_path) - InStrRev(file_path, "\")))
Else
MsgBox "You clicked Cancel in the file dialog box."
End If
End With
End
Sub Copy_file(old_path As String, file_name As String)
Dim fs As Object
Dim images_path As String
images_path = CurrentProject.Path & "\images\"
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFile old_path, images_path & file_name
Set fs = Nothing
'Update your database with the file location of images_path & file_name
End
您可能需要进行更改,并且必须需要 Microsoft Office 12.0 对象库才能使 FileDialog 正常工作。 FileDialog 的大部分代码取自微软 http://msdn.microsoft.com/en-us/library/office/bb243865%28v=office.12%29.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)