Página 1 de 1

Cadastro de informação de uma aba

Enviado: 02 Mar 2020 às 10:20
por Rodolfokw
Bom dia a todos!

Sou iniciante em Macro/VBA no Excel e estou com um dúvida referente a cadastro de informações de uma aba para outra, contudo para determinadas linhas. Por exemplo:

Tenho na primeira aba o cadastro de informações de contagem de veículos (Células B9:E9) e o Horário de ínicio daquela contagem (Célula H4). As contagens são feitas a cada 15 minutos. Então, o contador termina a contagem, clica em enviar, e a informação é apagada para ele começar o próximo intervalo.

Imagem

Após o clique no botão Enviar, a informação seria enviada para uma outra aba, que agregaria todas as contagens, conforme explica a imagem abaixo.

Imagem

O meu objetivo (e, portanto, dúvida) seria como programar uma macro para que a informação da primeira aba vá especificamente para a linha do horário (no caso, das 16:30) da segunda aba (Células G33:J33).

Eu já tinha procurado vídeo-aulas a respeito, mas tudo que eu consigo achar é cadastro de informações onde a informação vai para a segunda aba na ordem de envio, e não para células especificas (como no caso da minha dúvida acima).

Re: Cadastro de informação de uma aba

Enviado: 03 Mar 2020 às 13:56
por osvaldomp
Disponibilize uma amostra do seu arquivo Excel, imagens não servem.

Cadastro de informação de uma aba

Enviado: 03 Mar 2020 às 17:46
por Rodolfokw
Opa, obrigado pela resposta. Segue em anexo a planilha.

Agradeço antecipadamente pela ajuda.

Re: Cadastro de informação de uma aba

Enviado: 03 Mar 2020 às 21:51
por topscore
Rodolfokw:

*Usei a coluna A em ambas planilhas, deixe-as ocultas ao usuário.
*Se precisar mudar o intervalo entre horário de início e fim, mude o valor de A2 em Veiculos_sete-01.
*Em ambas as abas, nunca altere a posição das tabelas, nunca insira ou exclua linhas e colunas. Se fizer, precisará adaptar o código.

Resolva o tópico se estiver satisfeito.

Re: Cadastro de informação de uma aba

Enviado: 03 Mar 2020 às 22:19
por osvaldomp
opção1 - rodar o código via botão
Código: Selecionar todos
Sub ReplicaDados()
 Dim h As Range
  For Each h In Sheets("Veículos_Seta-01").[E7:E70]
   If h.Text = [H4].Text Then    h.Offset(, 2).Resize(, 4).Value = [B9:E9].Value:Exit For
  Next h
End Sub
opção2 - rodar o código automaticamente após inserir a hora em H4 e apertar Enter
Instale uma cópia do código abaixo no Módulo da planilha Contagem_Veículos
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim h As Range
  If Target.Count > 1 Then Exit Sub
  If Target.Address <> "$H$4" Or Target.Value = "" Then Exit Sub
  For Each h In Sheets("Veículos_Seta-01").[E7:E70]
  If h.Text = Target.Text Then  h.Offset(, 2).Resize(, 4).Value = [B9:E9].Value:Exit For
  Next h
End Sub
* ambos os códigos sem Select _ :)

Re: Cadastro de informação de uma aba

Enviado: 04 Mar 2020 às 08:31
por Rodolfokw
Muito Obrigado pela Ajuda de todos! Resolveu muito bem a minha dúvida/problema. :D