嗨,我正在尝试使用 VBA 解压缩文件,但出现运行时错误 91。这是我的代码:
Dim Destino As String
Dim Origen As String
Dim oAplica As Object
Destino = "C:\Users\Oscar Mayorga\Downloads"
Origen = "C:\Users\Oscar Mayorga\Downloads\PD20210822.zip"
Set oAplica = CreateObject("Shell.Application")
oAplica.Namespace(Destino).CopyHere oAplica.Namespace(Origen).Items
Run Code Online (Sandbox Code Playgroud)
知道发生了什么吗?非常感谢
更改Destino = "C:\Users\Oscar Mayorga\Downloads为Destino = "C:\Users\Oscar Mayorga\Downloads\"。也更改声明为String以Variant
这是你正在尝试的吗?(未经测试)
Dim Destino As Variant
Dim Origen As Variant
Dim oAplica As Object
Destino = "C:\Users\Oscar Mayorga\Downloads\"
Origen = "C:\Users\Oscar Mayorga\Downloads\PD20210822.zip"
Set oAplica = CreateObject("Shell.Application")
oAplica.Namespace(Destino).CopyHere oAplica.Namespace(Origen).Items
Run Code Online (Sandbox Code Playgroud)
说明:您正在使用后期绑定。要理解这一点,请使用如下所示的早期绑定。设置对Microsoft Shell Controls and Automationfrom的引用Tools | References
Option Explicit
Sub Sample()
Dim Destino As Variant
Dim Origen As Variant
Dim oAplica As Shell32.Shell
Destino = "C:\Users\Oscar Mayorga\Downloads\"
Origen = "C:\Users\Oscar Mayorga\Downloads\PD20210822.zip"
Set oAplica = New Shell32.Shell
oAplica.Namespace(Destino).CopyHere oAplica.Namespace(Origen).Items
End Sub
Run Code Online (Sandbox Code Playgroud)
现在,当您在输入括号后按空格键时,您会注意到以下内容
它期望一个Variant. 更多关于它的信息可以在Shell.NameSpace 方法中阅读
如果上述链接失效
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |