none
AppActivate - como usar?? RRS feed

  • Pergunta

  • Boa tarde,

    Sou um iniciante em VBA e tenho um problema para o qual solicito ajuda. Agradecido antecipadamente.

    Preciso de ativar o Excel periodicamente, independentemente de estar a trabalhar no excel, word, net, etc. Descobri que o comando/instrução AppAtivate o faz, mas não consigo que este comando funcione nos meus pc´s (Office 2010 e 2013)porque o VBA não o reconhece.

    por favor, alguém me explica porquê?? tenho de ativar algum add-in?? 

     1. o código para periodicamente - a cada 15 minutos - chamar a sub "tarefa" é o seguinte:

    Sub periodica_teste()

        TimeToRun = Now + TimeValue("00:15:00")
       
        Application.OnTime TimeToRun, "tarefa"
    End Sub

    2. a instrução que não funciona é:

    AppActivate "Microsoft Excel" (mesmo esteja a trabalhar em office2010)

    obrigado e imensos abraços

    Bruno

    domingo, 29 de novembro de 2015 00:11

Respostas

  • Ao inserir um código no fórum, utilize blocos de código. Para utilizar essa ferramenta, clique no botão cuja legenda é “Inserir bloco de código” na barra do editor de mensagens do fórum. Uma janela aparecerá onde você deverá colar seu código cru na caixa de texto à esquerda. Então, selecione a opção Vb.Net na caixa de combinação que você verá em cima à esquerda e depois clique no botão Inserir.

    ---

    Bruno, você tem certeza que o código está sendo executado? Já experimentou trocar a instrução AppActivate por uma que mostre uma MsgBox para efeito de teste, e num intervalo menor que 15 minutos (digamos, 5 segundos)?


    http://www.ambienteoffice.com.br - http://www.clarian.com.br

    segunda-feira, 30 de novembro de 2015 14:13
    Moderador
  • Boa tarde,

    Sou um iniciante em VBA e tenho um problema para o qual solicito ajuda. Agradecido antecipadamente.

    Preciso de ativar o Excel periodicamente, independentemente de estar a trabalhar no excel, word, net, etc. Descobri que o comando/instrução AppAtivate o faz, mas não consigo que este comando funcione nos meus pc´s (Office 2010 e 2013)porque o VBA não o reconhece.

    por favor, alguém me explica porquê?? tenho de ativar algum add-in?? 

     1. o código para periodicamente - a cada 15 minutos - chamar a sub "tarefa" é o seguinte:

    Sub periodica_teste()

        TimeToRun = Now + TimeValue("00:15:00")
       
        Application.OnTime TimeToRun, "tarefa"
    End Sub

    2. a instrução que não funciona é:

    AppActivate "Microsoft Excel" (mesmo esteja a trabalhar em office2010)

    obrigado e imensos abraços

    Bruno

    Bruno,

    Você cometeu um erro de digitação. O nome da função é AppActivate.

    Para chamar o Excel você pode fazer o seguinte:

    AppActivate("Excel")

    Espero ter ajudado.

    segunda-feira, 30 de novembro de 2015 14:38

Todas as Respostas

  • Boa tarde,

    Sou um iniciante em VBA e tenho um problema para o qual solicito ajuda. Agradecido antecipadamente.

    Preciso de ativar o Excel periodicamente, independentemente de estar a trabalhar no excel, word, net, etc. Descobri que o comando/instrução AppAtivate o faz, mas não consigo que este comando funcione nos meus pc´s (Office 2010 e 2013)porque o VBA não o reconhece.

    por favor, alguém me explica porquê?? tenho de ativar algum add-in?? 

     1. o código para periodicamente - a cada 15 minutos - chamar a sub "tarefa" é o seguinte:

    Sub periodica_teste()

        TimeToRun = Now + TimeValue("00:15:00")
       
        Application.OnTime TimeToRun, "tarefa"
    End Sub

    2. a instrução que não funciona é:

    AppActivate "Microsoft Excel" (mesmo esteja a trabalhar em office2010)

    obrigado e imensos abraços

    Bruno

    domingo, 29 de novembro de 2015 00:11
  • Bom dia,

    Aparece alguma mensagem de erro ?

    Existe algum arquivo do Excel aberto ? Pois caso haja, você deve referenciar também o nome do mesmo, que aparece na barra de títulos, ao invés de usar apenas 'Microsoft Excel'

    Já tentou utilizar activate workbook ?

    https://msdn.microsoft.com/pt-br/library/office/ff821837.aspx

    domingo, 29 de novembro de 2015 11:52
  • Ao inserir um código no fórum, utilize blocos de código. Para utilizar essa ferramenta, clique no botão cuja legenda é “Inserir bloco de código” na barra do editor de mensagens do fórum. Uma janela aparecerá onde você deverá colar seu código cru na caixa de texto à esquerda. Então, selecione a opção Vb.Net na caixa de combinação que você verá em cima à esquerda e depois clique no botão Inserir.

    ---

    Bruno, você tem certeza que o código está sendo executado? Já experimentou trocar a instrução AppActivate por uma que mostre uma MsgBox para efeito de teste, e num intervalo menor que 15 minutos (digamos, 5 segundos)?


    http://www.ambienteoffice.com.br - http://www.clarian.com.br

    segunda-feira, 30 de novembro de 2015 14:13
    Moderador
  • Boa tarde,

    Sou um iniciante em VBA e tenho um problema para o qual solicito ajuda. Agradecido antecipadamente.

    Preciso de ativar o Excel periodicamente, independentemente de estar a trabalhar no excel, word, net, etc. Descobri que o comando/instrução AppAtivate o faz, mas não consigo que este comando funcione nos meus pc´s (Office 2010 e 2013)porque o VBA não o reconhece.

    por favor, alguém me explica porquê?? tenho de ativar algum add-in?? 

     1. o código para periodicamente - a cada 15 minutos - chamar a sub "tarefa" é o seguinte:

    Sub periodica_teste()

        TimeToRun = Now + TimeValue("00:15:00")
       
        Application.OnTime TimeToRun, "tarefa"
    End Sub

    2. a instrução que não funciona é:

    AppActivate "Microsoft Excel" (mesmo esteja a trabalhar em office2010)

    obrigado e imensos abraços

    Bruno

    Bruno,

    Você cometeu um erro de digitação. O nome da função é AppActivate.

    Para chamar o Excel você pode fazer o seguinte:

    AppActivate("Excel")

    Espero ter ajudado.

    segunda-feira, 30 de novembro de 2015 14:38