VERIFICAÇÃO DE ÚLTI...
 
Notifications
Clear all

[Resolvido] VERIFICAÇÃO DE ÚLTIMA LINHA

3 Posts
2 Usuários
1 Likes
626 Visualizações
 Siqs
(@siqs)
Posts: 12
Active Member
Topic starter
 

Boa tarde a todos! 

Fiz uma macro para automatizar a criação e o envio de uma lista para separação de equipamentos (arquivo em anexo para melhor visualização). 

 

Tenho 02 abas (ESTOQUE / LISTA), na primeira preenchemos nomes e quantidades, ao apertar o command button a segunda aba é alimentada, cria-se um arquivo pdf e abre uma nova janela de email para envio da lista já com os endereços cadastrados previamente. 

 

O que pega é que, no código do Loop2 (meus conhecimentos de VBA não me permitiram montar um código com estrutura mais limpa e sofisticada do que esse ainda) a linha de comando para identificar a última linha (variável Xs) não está reconhecendo os últimos itens adicionados, voltando sempre para a célula C5, conseguem me ajudar com esse entrave por favor? (caso tenham sugestões para melhoria do código, agradeço demais também - uma outra dúvida, é como eu posso utilizar todos objetos e variáveis que defini para as subs da mesma planilha), segue trecho do código:

Sub Loop2()

Application.ScreenUpdating = False
Dim MO1, MO2 As Object
Dim K, X, Xs, Xy, Y, Z As Range
Dim linha As Long

Set MO1 = Planilha3
Set MO2 = Planilha2
Set X = MO1.Range("C6")
Set Y = MO1.Range("C2:D3")
Set Z = MO2.Range("C2:D3")
Set Xs = MO2.Range("C1048576").End(xlUp)
Set Xy = MO1.Range("D1048576").End(xlUp)
linha = MO1.Range("D1048576").End(xlUp).Row

With MO1
    MO1.Activate
    Do While ActiveCell.Value <> "" And ActiveCell.Value <> "QTDE"
    MO1.Activate
    ActiveCell.EntireRow.Copy
    MO2.Activate
    Xs.Offset(1, 0).Select
    ActiveCell.EntireRow.Select
    Selection.PasteSpecial (xlPasteValues)
    MO1.Activate
    ActiveCell.Offset(-1, 0).Select
    Loop
    
End With

Application.ScreenUpdating = True
End Sub
 
Postado : 16/09/2022 12:13 pm
(@kikoerick)
Posts: 51
Trusted Member
 

@siqs Bom dia,

Comentei seu código e adicionei uma rotina para gerar a lista (pelo que entendi o problema é gerar o lista, voltando sempre na célula C5)

Confira se é o que deseja, em caso afirmativo, vá alterando os comentário para que as demais funções retornem a atividade.

Qualquer dúvida, estou à disposição.

 
Postado : 19/09/2022 11:07 am
Siqs reacted
 Siqs
(@siqs)
Posts: 12
Active Member
Topic starter
 

@kikoerick Boa tarde! Cara, sensacional, funcionou certinho!

Fora que ver seu código me fez perceber que o que eu achava ser organização no meu, na verdade era poluição, aproveitei seu código para limpar o meu! Agradeço pela força.

 
Postado : 19/09/2022 1:36 pm