O erro "THE CONTROL COULD NOT BE FOUND BY ID" geralmente ocorre quando o script não consegue localizar o elemento de interface especificado na linha:
Session.findById("wnd[1]/usr/tabsG_SELONETABSTRIP/tabpTAB012/ssubSUBSCR_PRESEL:SAPLSDH4:0220/sub:SAPLSDH4:0220/txtG_SELFLD_TAB-LOW[0,24]").Text = Cells(3, 14)
Aqui estão alguns passos que podem ajudar a solucionar o problema:
- Verifique se a tela correta está ativa:
- Certifique-se de que a tela
wnd[1]
realmente aparece como janela secundária após o comandosendVKey 4
na linha anterior. Caso contrário, o script não conseguirá encontrar o elemento. - Tente adicionar um pequeno atraso para garantir que a janela
wnd[1]
foi carregada antes de acessar o campo.
- Confirme o ID do controle:
- O ID do campo pode variar dependendo da versão ou configuração do SAP. Para identificar o ID correto:
- Ative o modo de script (SAP GUI Scripting) em SAP.
- Navegue manualmente até o campo e utilize o gravador de scripts para capturar o ID exato do controle.
- Verifique se o ID coincide com o caminho:
"wnd[1]/usr/tabsG_SELONETABSTRIP/tabpTAB012/ssubSUBSCR_PRESEL:SAPLSDH4:0220/sub:SAPLSDH4:0220/txtG_SELFLD_TAB-LOW[0,24]"
.
- Teste com o ID do controle simplificado:
- Em alguns casos, o ID pode funcionar sem partes da string, por exemplo:
Session.findById("wnd[1]/usr/txtG_SELFLD_TAB-LOW[0,24]").Text = Cells(3, 14)
- Tente simplificar o caminho e teste para ver se o elemento é localizado dessa forma.
- Adicione tratamento de erro:
- Para testar e evitar que o script pare abruptamente, você pode adicionar tratamento de erros para verificar se o elemento existe antes de atribuir um valor:
On Error Resume Next Set campo = Session.findById("wnd[1]/usr/tabsG_SELONETABSTRIP/tabpTAB012/ssubSUBSCR_PRESEL:SAPLSDH4:0220/sub:SAPLSDH4:0220/txtG_SELFLD_TAB-LOW[0,24]") On Error GoTo 0 If Not campo Is Nothing Then campo.Text = Cells(3, 14) Else MsgBox "Campo não encontrado." End If
- Verifique permissões e disponibilidade de SAP GUI Scripting:
- Confirme que o SAP GUI Scripting está ativado no sistema e que você tem permissões adequadas. Sem isso, certos elementos podem não estar acessíveis.
Essas etapas devem ajudar a localizar e corrigir o problema com o elemento do SAP GUI Scripting.