Macro/Script para Ativar Teclas  [Resolvido]

Visual Basic for Aplication e macros no Excel.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Macro/Script para Ativar Teclas

Mensagempor Pedro12345 » Sex Jul 13, 2018 1:14 pm

Olá caros colegas,

necessito da vossa ajuda.

Estou a trabalhar com um software, em que por vezes é necessário confirmar várias vezes, algumas mensagens que aparecem no ecrã.
Para ultrapassar isso, necessito de clicar na Tecla F5 e seguida da tecla ENTER e assim repetidamente, até concluir todos os processos no software.

Gostava da vossa ajuda para criar uma macro, que após clicar botão para a compilar, teria de aguardar uns 5 segundos, para eu ir seleccionar/ativar a janela do software e após correr o codigo no software.
A Macro consistiria em loop a clicar automaticamente na Tecla F5 + Enter repetidamente até uma tecla definir a paragem do mesmo (exemplo tecla ESC ou SPACE).

Creio que a macro se assemelha a um script a desenvolver.

Poderiam indiciar-me alguma informação sobre este desenvolvimento e por onde começar?

Obrigado!

Cumprimentos a todos! :) :)
Pedro12345
Membro
Membro
 
Mensagens: 33
Registrado em: Dom Fev 19, 2017 4:09 pm
Has thanked: 8 times
Have thanks: 0 time

{ SO_SELECT }

Re: Macro/Script para Ativar Teclas

Mensagempor klarc28 » Sex Jul 13, 2018 1:42 pm

Código: Selecionar todos
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Command1_Click()
    AppActivate "Exploring", True
    SendKeys "% {Down 4}{Enter}", True
    Sleep 1000
    AppActivate "Form1"
    Call Command2_Click
End Sub

Private Sub Command2_Click()
    AppActivate "Exploring", True
    SendKeys "{F5}", True
End Sub
Quando quiser agradecer, clique no joinha. Marque como resolvido na parte que resolveu sua dúvida.
klarc28
Membro
Membro
 
Mensagens: 970
Registrado em: Sáb Dez 09, 2017 12:33 am
Has thanked: 22 times
Have thanks: 405 times

Re: Macro/Script para Ativar Teclas

Mensagempor Pedro12345 » Sex Jul 13, 2018 7:34 pm

Olá klarc28,

Antes de mais obrigado pela sua rápida resposta!

Contudo, continuo com dúvidas, pois creio que o código que me passou contém 2 command buttons, quando na verdade só pretendo carregar num único botão para correr a macro até clicar noutra tecla (tecla ESC ou Espaço).

O código pode até mesmo ser incorporado numa macro em excel.

Anexo envio o ficheiro, onde para além da macro, já testei criar um form..

O código que tenho atualmente é este, mas que não tem forma de parar e tenho dúvidas se irá resultar:

Código: Selecionar todos
'Private Sub CommandButton1_Click()
Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)


Public Sub TesteOnTime()
Call Application.OnTime(Now + TimeValue("00:00:05"), "Macro1")
End Sub

Sub macro1()


'AppActivate "Exploring", True
    SendKeys "% {Down 4}{Enter}", True
    Sleep 1000
    'AppActivate "Form1"
    Call macro2

End Sub
Sub macro2()


'    AppActivate "Exploring", True
    SendKeys "{F5}", True
    Call Application.OnTime(Now + TimeValue("00:00:01"), "Macro1")
   
End Sub


Acham que podem ajudar?
Você não está autorizado a ver ou baixar esse anexo.
Pedro12345
Membro
Membro
 
Mensagens: 33
Registrado em: Dom Fev 19, 2017 4:09 pm
Has thanked: 8 times
Have thanks: 0 time

Re: Macro/Script para Ativar Teclas

Mensagempor Pedro12345 » Dom Jul 15, 2018 12:29 pm

Olá a todos,

Neste momento tenho este código desenvolvido, onde em vez de ter uma tecla pré-definida para parar o ciclo do script, tenho configurado para o utilizador definir quantas vezes o deseja compilar...
Estou a ter problemas com a linha de código
AppActivate "Exploring", True
onde aparece o erro: "Invalid Procedure call or argument"
Não é possível configurar para compilar a marcação da teclas na janela ativa do meu software?

Alguém pode validar o código abaixo desenvolvido?

Código: Selecionar todos
Option Explicit

Sub teclas()

Dim ciclos, n As Integer
n = 0

ciclos = InputBox("Quantas vezes deseja correr o ciclo do Script?", "STOP!")

Application.Wait Now + TimeValue("0:00:03")

Start:
AppActivate "Exploring", True

Application.SendKeys "{F5}", True
SendKeys "{F5}", True

Application.Wait Now + TimeValue("0:00:01")
Application.SendKeys "~", True

Application.Wait Now + TimeValue("0:00:01")
Application.SendKeys "~", True

Application.Wait Now + TimeValue("0:00:02")

n = n + 1

If n < ciclos Then
GoTo Start
Else
Exit Sub
End If

End Sub


Obrigado a todos! ;)
Pedro12345
Membro
Membro
 
Mensagens: 33
Registrado em: Dom Fev 19, 2017 4:09 pm
Has thanked: 8 times
Have thanks: 0 time

Re: Macro/Script para Ativar Teclas

Mensagempor klarc28 » Qua Jul 18, 2018 8:05 am

Código: Selecionar todos
Option Explicit

Sub teclas()

Dim ciclos, n As Integer
n = 0

ciclos = InputBox("Quantas vezes deseja correr o ciclo do Script?", "STOP!")

Application.Wait Now + TimeValue("0:00:03")

Start:
AppActivate "Exploring", True



n = n + 1

If n < ciclos Then
GoTo Start
Else
Exit Sub
End If

End Sub

sub Exploring (  )

Application.SendKeys "{F5}", True
SendKeys "{F5}", True

Application.Wait Now + TimeValue("0:00:01")
Application.SendKeys "~", True

Application.Wait Now + TimeValue("0:00:01")
Application.SendKeys "~", True

Application.Wait Now + TimeValue("0:00:02")
end sub
Quando quiser agradecer, clique no joinha. Marque como resolvido na parte que resolveu sua dúvida.

For this post the author klarc28 thanked:
Pedro12345 (Qua Ago 01, 2018 8:07 am)
klarc28
Membro
Membro
 
Mensagens: 970
Registrado em: Sáb Dez 09, 2017 12:33 am
Has thanked: 22 times
Have thanks: 405 times

Re: Macro/Script para Ativar Teclas  [Resolvido]

Mensagempor Pedro12345 » Sex Jul 20, 2018 11:29 am

Ola,

continua a dar erro na linha AppActivate "Exploring", True

:?
Pedro12345
Membro
Membro
 
Mensagens: 33
Registrado em: Dom Fev 19, 2017 4:09 pm
Has thanked: 8 times
Have thanks: 0 time


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes