复制并重命名文件

时间:2018-07-17 08:28:39

标签: vba ms-access

我有一个Access数据库(后端)。大小正在急剧增加,我确定是因为我的主表中有一个附件字段。

我决定存储文件路径名而不是文件本身;
我在这里找到了@Fionnuala,这个VBA例程和功能非常适合我(我只是将AllowMultiSelect更改为FALSE)。

如何将所选文件复制到网络文件夹,然后使用字段ID作为名称的一部分对其进行重命名。像[ID]和“ lto.pdf”

ID是我的主表中的一个字段;
复制后的文件名将为 O:/DOCS/678LTO.PDF

Private Sub Command7_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

'Here I need to copy the file to O:\DOCS
'And rename it as [ID] & “lto.pdf” resulting O:\DOCS\328LTO.pdf

    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

1 个答案:

答案 0 :(得分:1)

使用FileCopy Method

'Here I need to copy the file to O:\DOCS
'And rename it as [ID] & “lto.pdf” resulting O:\DOCS\328LTO.pdf
FileCopy f.SelectedItems(i), "O:\DOCS\" & Your[ID] & "LTO.pdf"