使用Microsoft Access创建文档数据库
-
21-12-2019 - |
题
我试图在数据库中创建一个表,该表存储与数据库相关的所有文档“。我真正想要的是上传的文件,并将文件复制到网络位置,通过从文档表窗体中连接两个字段来重命名文件(消除外部位置中的重复文件名问题),然后将文件名和文件路径存储在表中的文件路径字段中。访问和VBA我很新,所以我很难让一切都能工作。我目前所拥有的代码如下:
Option Compare Database
Private Sub Command15_Click()
Dim f As Object
Set f = Application.FileDialog(3)
f.AllowMultiSelect = False
If f.Show Then
For i = 1 To f.SelectedItems.Count
sFile = Filename(f.SelectedItems(i), sPath)
MsgBox sPath & "---" & sFile
Next
End If
End Sub
Public Function Filename(ByVal strPath As String, sPath) As String
sPath = Left(strPath, InStrRev(strPath, "\"))
Filename = Mid(strPath, InStrRev(strPath, "\") + 1)
End Function
.
我似乎无法掌握如何移动,通过将两个字段从表单连接,或存储表格的路径字段中的路径来重命名。我去过以下位置来获取我可以的信息
我目前正在使用Microsoft Access 2010,并且由于数据库大小约束,我不希望使用文件附件字段类型。目前我按一个按钮,文件资源管理器似乎导航到正在上载的文件,并且路径和文件名被输入到字符串中。在这一点之后,我迷路了。如果需要任何其他信息,请告诉我。提前感谢您的帮助。
解决方案
我相信你管理文件的方法是对的。在大多数情况下,当文件系统更适合这份工作时,在数据库本身存储文档并没有很大意义。
您所做的是相当简单的,但主要的复杂性将来自各种路径和文件名的正确管理,并从中提取正确的信息。
如果您没有使用一些辅助功能来解剖和重新关注路径的各种比特,则可能会变得棘手。
我已经创建了一个 sample database数据库具有少数功能。可能不会完全符合您需要的内容,但您可以轻松地播放它以适应您的特定情况。
示例数据库包括一个生成的icetagcode vba模块,具有一些有用的功能,可以将路径分成其成分。
基本上,数据库有2个形式。
主表单允许您设置要保存文件的网络路径。 然后,您可以选择与文档关联的预定义的帐号(列出的属性定义表中),然后单击上载按钮。
这在Tools
表中创建了一个新的记录,打开了一个表单,您可以在其中编辑文档标题,然后单击一个按钮以将文件上传到服务器。
在转换路径后,用户选择的文件将复制到服务器。
我认为文件将保留其原始扩展名,文件名将重命名为生成的Account
记录的Document
,其中文件信息被保存(如世文乡icetagcode),并且该文件夹在服务器上保存的文件夹将是帐号,使用户选择的源文件
C:\Users\user\Desktop\SuperSecretFile.pdf
.
将保存为例如:
\\docserver\files\123-55547\5845.pdf
.
主表单还允许您更新现有记录,从服务器打开文件,打开文件所在的服务器文件夹,甚至用文件的原始名称将服务器文件复制回用户的计算机。
我会让你玩它。如果您有任何问题,请告诉我。