#vba #windows #office365 #compiler-warnings #sendkeys
Вопрос:
Я пытаюсь выполнить очень простую процедуру с помощью метода SendKeys в VBA, чтобы автоматизировать открытие приложения.
Проблема в том, что я пытаюсь открыть файл .exe .Файл чернил (ярлык). Компиляция VBA останавливается, и появляется следующее сообщение: «Некоторые файлы содержат вирусы, которые могут нанести вред вашему компьютеру….»
После этого мне нужно выбрать «Ок» или «Отмена», и приложение не работает должным образом.
Я много исследовал, но не смог найти никакого решения. Есть ли какой-нибудь способ сделать так, чтобы сообщение не появлялось?
У меня есть Windows 10 Home На одном языке, Microsoft 365, версия Excel 2107.
Смотрите ниже код, пожалуйста (Предупреждающее сообщение появляется в строке «SendKeys (strFile)»):
Sub Ligacao()
Dim strOrigem As String
Dim strExtensao As String
Dim strFile As String
Application.DisplayAlerts = False
strOrigem = ThisWorkbook.Path amp; ""
strExtensao = ".lnk"
strFile = Dir(strOrigem amp; "*" amp; strExtensao)
Do While strFile <> ""
If Mid(strFile, 1, 3) = "Hat" Then
SendKeys (strFile)
End If
Loop
End Sub
Комментарии:
1. Привет, скобки работают. Проблема заключается в сообщении, которое появляется из Windows как внутренняя безопасная процедура Windows.
2. Если вы просите способ обойти систему безопасности Windows, это невозможно. Вероятно , есть лучший способ сделать это вместо использования
SendKeys
, который следует использовать только в крайнем случае.3. У вас есть какие-нибудь предложения? Мне нужно автоматически открыть некоторые файлы .exe
4. Как насчет использования
Shell
функции, раз она для этого и используется?5. Я постараюсь! Единственное, что потребуется после открытия exe-файла, — это снова нажать «enter». Возможно ли это с помощью функции оболочки?