Не используйте treescope_descendants из RootElement без осторожности!Я не знаю почему, но в функции FindAll может быть ошибка, часто при прохождении потомков корня.
Предположим, вы ищете диалоговое окно «Сохранить как» (а затем текстовое поле filepath внутри).
Перебирайте rootelement.children и ищитевладелец окна «Сохранить как».Так что, если владельцем является браузер Internet Explorer, проверьте rootelement.children для пользователей с UIA_Nameproperty, таких как * Internet Explorer.Затем найдите их потомков для поля SaveAs.
В качестве альтернативы, попробуйте добавить другое условие при установке oElements, которое получает те с помощью windowpattern:
Set oCondition = oAutomation.CreatePropertyCondition(UIAutomationClient.UIA_IsWindowPatternAvailablePropertyId, True)
Вы уже снова проверяете свойство имени в своем первом if-блоке