Jump to content
Fórum Script Brasil
  • 0

Executar Macro ao receber novos dados externos (conexão)


Question

Boa Noite.

Tenho uma Planilha que recebe dados externos de uma conexão com um Formulário do Google Forms. Cada formulário preenchido chega na planilha como uma nova linha nessa tabela de importação.

A minha tabela hoje ocupa da linha B1:T1(cabeçalho) até a linha B29:T29 (ou seja, já tenho 28 linhas de dados). Quando novos dados do Google Form forem recebidos, a cada formulário enviado, uma nova linha desses planilha sera preenchida.

O lance é que a cada linha recebida eu preciso executar uma macro (que realiza alguns procedimentos e exporta um dado por email). A parte de importação automatizada dos dados do google form para o excel está ok. A parte de calculos e exportar dados por email também. O que não estou conseguindo fazer é acionar essa macro de calculo e exportação a partir da entrada de novos dados na planilha específica.

Pensando de forma mais clara e direta, o que preciso é uma programação que monitore a celula $B$30, por exemplo, e assim que ela receber dados (ou seja, mudar de valor) então ative a macro de cálculos. Feito isso, a programação deve então monitorar a celula seguinte, no caso a $B$31 e novamente acione a macro de cálculos assim que esta célula mude de valor e assim sucessivamente com a $B$32... $B$33... $B$34... eternamente, pra mim resolveria... Um dado importante: cada formulario do Google Form preenche apenas uma linha e dados da coluna B nunca vêem em branco, outras colunas podem vir sem dados, mas a coluna B não, por isso acredito que seja a coluna certa para monitorar e fazer o trigger da macro de cálculos. 

Tentei fazer algo como: 

Private Sub Worksheet_Change(ByVal Target As Range)

MacroCalculo()

End Sub

Mas o Excel, ao fazer o refresh dos dados externos (a cada 1 minuto), considera que houve alteração nas células da tabela de importação, mesmo que não haja novos dados, e daí a Macro é rodada quando não deveria...

 

Bom... acho que é isso. alguém pode me ajudar? 

Obrigado!

Marcus

 

 

Alguém pode me ajudar?

Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Agora vou falar besteira kkkkkk

A ideia de olhar alterações vai, na minha cabra, travar o projeto. Não se já testou.

Tentar fazer um evento acada 30 segundo ou mesmo os 60 para olhar a alterações e criar uma variável "global" para armazenar a ultima linha alterada.

Claro que pode deixar em outro local do projeto para verificar sempre a ultima preenchida.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      148689
    • Total Posts
      644524
×
×
  • Create New...