Página 1 de 1

Se preenchido pular para a próxima

Enviado: 18 Ago 2019 às 21:13
por fabril15
Olá,

Espero que possam me ajudar!
Sou bem iniciante em VBA, o que consegui fazer foi gravando Macro.

Tenho uma validação em B2, e abaixo tenho algumas linhas B4:B9.
Preciso que o item que for selecionado na validação seja inserido na linha B4. Para isso gravei uma macro para puxar o valor selecionado na B2 para B4, depois copio texto da célula e cola valores para que não fiquei vinculado, depois apaga o que foi selecionado em B2.
AGORA QUE É A AJUDA.

Preciso selecionar outro item em B2, mas agora enviar para a linha abaixo (já que a linha que está na instrução JÁ ESTÁ PREENCHIDA.
Queria completar a macro para que ela entendesse que caso a linha acima esteja preenchida, ela deve puxar para a linha seguinte, e assim por diante... Quando selecionar de novo em B2 e perceber quem a B4 e B5 está preenchida, puxar para a linha seguinte (B6).

Segue o link com o arquivo.
https://drive.google.com/file/d/1T9kOE3 ... sp=sharing

Desde já, obrigado

Re: Se preenchido pular para a próxima

Enviado: 18 Ago 2019 às 23:07
por osvaldomp
Instale uma cópia do código abaixo em um Módulo comum (menu Inserir / Módulo) e não no módulo de EstaPasta, onde você instalou o seu código gravado.
Código: Selecionar todos
Sub Enviar_2()
 Cells(IIf([B4] = "", 4, Cells(Rows.Count, 2).End(3).Row + 1), 2) = [B2]: [B2] = ""
End Sub
ou se você quiser que o código faça a operação automaticamente após selecionar um valor em B2, sem precisar de botão, então instale o código abaixo no módulo da planilha
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Count > 1 Then Exit Sub
 If Target.Address <> "$B$2" Or Target.Value = "" Then Exit Sub
 Cells(IIf([B4] = "", 4, Cells(Rows.Count, 2).End(3).Row + 1), 2) = [B2]: [B2] = ""
End Sub
dica - para anexar arquivos diretamente aqui no fórum clique em +Resposta / Adicionar um anexo / Selecione o arquivo