Eu gostaria de pedir uma ajuda de vocês, claro se puderem.
Criei um código que deveria fazer o seguinte procedimento
Detectar a ultima linha ativa da coluna “A” da minha planilha;
Ainda nesta linha, deslocar o cursor até a coluna “Y”;
Entrar em um Loop de Do While até a linha 13 em que:
Vai estabelecer uma IF e verificar linha por linha da coluna “Y” se a condição “z” é Verdadeira ou Falsa. Sendo falsa ela sobe uma linha paraa próxima analise. Sendo verdadeira:
i.Ainda na mesma linha o cursor irá selecionar o intervalo da coluna 34 até 36 e irá fazer um Selection.FillRight, para expandir as fórmulas e formatação, ;
ii.Depois a mesma coisa entre as colunas 39 até 41;
iii.Depois a mesma coisa entre as colunas 44 até 46;
iv.Depois a mesma coisa entre as colunas 49 até 51;
Entra no Loop Terminando o procedimento na linha 13.
Eu fiz essa macro, mas não entendo por que não está Funcionando. Será que alguém consegue me ajudar?
Obs: Eu tentei enviar a planilha no Forum, mas o mesmo não permite a extensão xlsm. Caso queiram a planilha para analisar, me avisem como eu devo proceder.
Pergunta
wbrito
Olá pessoal, tudo bem
Sou novo no mundo do VBA e neste fórum.
Eu gostaria de pedir uma ajuda de vocês, claro se puderem.
Criei um código que deveria fazer o seguinte procedimento
i. Ainda na mesma linha o cursor irá selecionar o intervalo da coluna 34 até 36 e irá fazer um Selection.FillRight, para expandir as fórmulas e formatação, ;
ii. Depois a mesma coisa entre as colunas 39 até 41;
iii. Depois a mesma coisa entre as colunas 44 até 46;
iv. Depois a mesma coisa entre as colunas 49 até 51;
Eu fiz essa macro, mas não entendo por que não está Funcionando. Será que alguém consegue me ajudar?
Obs: Eu tentei enviar a planilha no Forum, mas o mesmo não permite a extensão xlsm. Caso queiram a planilha para analisar, me avisem como eu devo proceder.
Sub teste_Do_While()
Dim W As Worksheet
Set W = Sheets("Sheet1")
Dim UltCel As Integer
W.Select
UltCel = W.Range("A1048576").End(xlUp).Select
Do While ActiveCell.Row >= 13
If Cells(UltCel, 21).Value = "z" Then
Range(Cells(UltCel, 34), Cells(UltCel, 36)).Select
Selection.FillRight
Range(Cells(UltCel, 39), Cells(UltCel, 41)).Select
Selection.FillRight
Range(Cells(UltCel, 44), Cells(UltCel, 46)).Select
Selection.FillRight
Range(Cells(UltCel, 49), Cells(UltCel, 51)).Select
Selection.FillRight
End If
ActiveCell.Offset(-1, 0).Select
' será excluída linha por linha. (Cells(linha, 1)= coluna A, Cells(linha, 36) = "AJ"
Loop
End Sub
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.