是否可以使用VBA关闭给定目录中的所有打开文件,而不知道文件名/扩展名等...
编辑.....
我有链接到记录的目录,例如Joe Bloggs的记录有一个与名称相关的目录,例如Bloggs,Joe
如果用户更改了记录名称,则文件夹名称必须反映这一点。
目前,如果关闭所有关联文件,我可以更改目录名称。此外,如果这些文件打开,我可以提示用户关闭相关文件。
我想知道是否可以关闭/提示保存文件?
再次编辑.....
为了使问题更复杂,目录树中还有与每条记录相关的目录。 (我应该在开始时更清楚,数据库存储有关家庭保险索赔的信息)
所以你有一个像这样的目录结构:
用户名_ID \第1行属性地址_ID \声明否_ID
提前感谢您提供任何帮助
干杯
诺尔
答案 0 :(得分:2)
我认为你可以不理解这件事。您的Users表应具有主键user_id。假设Joe Bloggs的user_id为27.为他创建文件夹为C:\ userdirs \ 27。如果稍后更改了Joe的名称,则他的user_id和用户文件夹可以保持不变。
如果您的用户需要按用户名而不是user_id访问这些文件夹,请为他们创建快捷方式。
Public Function CreateUserDirShortcut(ByVal pLinkFolder As String, _
ByVal pLinkName As String, _
ByVal pTargetFolder As String) As Boolean
Dim objShell As Object
Dim objLink As Object
Dim strMsg As String
Dim blnReturn As Boolean
On Error GoTo ErrorHandler
Set objShell = CreateObject("WScript.Shell")
Set objLink = objShell.CreateShortcut(pLinkFolder & Chr(92) & pLinkName & ".lnk")
objLink.Description = pLinkName
objLink.TargetPath = pTargetFolder
objLink.Save
blnReturn = True
ExitHere:
Set objLink = Nothing
Set objShell = Nothing
CreateUserDirShortcut = blnReturn
On Error GoTo 0
Exit Function
ErrorHandler:
strMsg = "Error " & Err.Number & " (" & Err.Description _
& ") in procedure CreateUserDirShortcut"
MsgBox strMsg
blnReturn = False
GoTo ExitHere
End Function
然后您可以像这样创建Joe Bloggs用户目录的快捷方式:
CreateUserDirShortcut "C:\shortcuts", "Bloggs, Joe", "C:\userdirs\27")