首页 > 解决方案 > 使用 vba 打开一个文件夹,以便我可以在 Access 2016 中粘贴图像。我有非工作选项

问题描述

以下代码(在按钮下)将我带到正确的文件夹。但!我无法粘贴图像。“粘贴”选项正在显示,但它是灰色的。是否有“vbNormalFocus”的替代方法可以以“非只读”格式打开文件夹?

Dim Foldername As String
Foldername = "c:\Users\John Smith\Desktop\DBFolder\DBImagesPeople"
Shell "C:\windows\explorer.exe """ & Foldername & "", vbNormalFocus

还是完全不同的路线?这让我如此接近!

标签: vba

解决方案


您可以使用批处理:

您看起来不会在显示的代码中复制任何内容......

Dim FileNumber As Integer
Dim retVal As Variant
Dim MY_FILENAME As String

'Batch Name and location
MY_FILENAME = ThisWorkbook.Path & "\" & "File.bat"
FileNumber = FreeFile

'create batch file
Open MY_FILENAME For Output As #FileNumber
Print #FileNumber, "@if (@CodeSection == @Batch) @then"
Print #FileNumber, "@echo off"
Print #FileNumber, "set Path=%~dp0"
Print #FileNumber, "copy C:\Users\John C:\Users\Sandra "
Print #FileNumber, "DEL " & Chr(34) & "%~f0" & Chr(34) ' delete itself'
Print #FileNumber, "exit /b"  'exit code'

Close #FileNumber

retVal = Shell(MY_FILENAME, vbNormalFocus)

推荐阅读