Já me aconteceu de me flagrar fazendo uma tarefa repetitiva como copiar linha por linha dados de uma planilha e colar em um sistema web e apertar Enter para enviar.
Quando minhas mãos começaram a doer eu pensei: “Pera aí, eu poderia mandar o computador fazer isso por mim!”
Uma pessoa feliz teve o mesmo pensamento que eu e criou o Autoit, uma linguagem de script parecida com Basic (segundo o criador) que permite automatizar praticamente qualquer tarefa.
Selecionar a linha, copiar, dar alt+tab, colar, dar alt+tab de novo? Escreva o código, rode, aperte uma tecla pré-definida e… pronto! Ele executa o processo repetitivo pra você!
Para baixar o programa, vá em https://www.autoitscript.com/site/
Veja o exemplo a seguir:
$global_sleep = 50 AutoItSetOption("MouseClickDownDelay", $global_sleep) AutoItSetOption("SendKeyDelay", $global_sleep) Func test() Send("+{Home}") Send("^c") Send("!{Tab}") Send("^v") Send("{Enter}") Send("!{Tab}") Send("{Down}") Send("{End}") EndFunc HotKeySet("{a}", test) While 1: Sleep(1) WEnd
Ao apertar a tecla a, o script irá dar Shift+Home, selecionando a linha atual, irá dar control+c para copiar, Alt+tab, control+v, Enter, Alt+tab novamente, apertar para baixo e finalmente End.
O While faz com que o script fique rodando infinitamente, esperando o apertar da tecla a ou o fechamento do script.
As opções MouseClickDownDelay e SendKeyDelay atrasam a execução de cliques e envios de teclas para que não aconteçam bugs como de o script clicar tão rápido que o programa se atrapalhe.
Para função de envio de teclas, veja essa referência: https://www.autoitscript.com/autoit3/docs/functions/Send.htm
Para função de clique de mouse, veja essa referência: https://www.autoitscript.com/autoit3/docs/functions/MouseClick.htm
Após ler a documentação, você irá substituir o corpo da função “test” para a sequência de movimentos que quer, e mudar o nome da função – e talvez também criar outras – atribuindo a função respectiva à tecla que desejar.