Página 1 de 1

Macro para arrastar fórmula

Enviado: 27 Dez 2018 às 10:54
por matheusdoexcel
Pessoal, gostaria de ajuda para criar uma macro que, como iniciante nesse mundo, estou tendo dificuldades para conseguir.

A macro seria para: ao ver que a célula A3 está preenchida e a célula B3 está vazia, o excel deveria arrastar a fórmula da última célula da coluna B preenchida até ela. Não sei se ficou confuso, mas basicamente seria para, ao perceber que uma célula está preenchida, e a outra vazia, deveria arrastar a fórmula da coluna para essa célula vazia. Isso valeria para a coluna D também. Isso seria como um loop, seria feito até que todas as células de A preenchidas tenham as células em B e D preenchidas também

Alguém consegue me ajudar?

Re: Macro para arrastar fórmula

Enviado: 27 Dez 2018 às 12:00
por osvaldomp
Experimente:
Código: Selecionar todos
Sub EstendeFórmulas()
  Cells(3, 2).Resize(Cells(Rows.Count, 1).End(3).Row - 3) = Cells(2, 2).FormulaR1C1
  Cells(3, 4).Resize(Cells(Rows.Count, 1).End(3).Row - 3) = Cells(2, 4).FormulaR1C1
End Sub

Macro para arrastar fórmula

Enviado: 27 Dez 2018 às 13:24
por matheusdoexcel
Caro Osvaldo, muito obrigado pela resposta, realmente a macro atende ao que solicitei. Mas considerando que fosse numa planilha com + de 5k de linhas, teria alguma forma de eu fazer o excel ir contando essas linhas em loop?

Macro para arrastar fórmula

Enviado: 27 Dez 2018 às 14:41
por mprudencio
Pra que contar???

Outra coisa o mesmo trabalho que vc tem para executar a macro vc tem para dar um clique duplo na alça de preenchimento.

Precisa mesmo de vba? :| :shock: :shock:

Re: Macro para arrastar fórmula

Enviado: 27 Dez 2018 às 14:47
por osvaldomp
Olá, Matheus.

O código que eu sugeri irá replicar as fórmulas existentes em B2 e em D2 até a última linha preenchida da coluna A, portanto, pode ser aplicado na planilha com 5k+ linhas preenchidas na coluna A. ;)
Testaí :)