Приведенный ниже код извлекает RAR-файл, но, поскольку я не уверен в местонахождении WinRar, мне понадобится проверить два местоположения.Приведенный ниже код приводит к ошибке несоответствия типов в WinRarPath.
Sub Extract()
Dim RarIt As String
Dim Source As String
Dim Desti As String
Dim WinRarPath As String
WinRarPath = "C:\Program Files\WinRar\" Or "C:\Program Files (x86)\WinRar\"
Source = "C:\VBA\VBA.rar"
Desti = "C:\VBA\"
RarIt = Shell(Chr(34) & WinRarPath & "WinRar.exe" & Chr(34) & " e " & Chr(34) & Source & Chr(34) & " " & Chr(34) & Desti & Chr(34), vbNormalFocus)
Application.Wait (Now + TimeValue("0:00:02"))
Kill Source
End Sub
Я надеюсь, что он проверит любое место и запустится.