Macro para alteraçã...
 
Notifications
Clear all

Macro para alteração em lote

2 Posts
2 Usuários
0 Reactions
1,411 Visualizações
(@jnexcel)
Posts: 298
Reputable Member
Topic starter
 

Pessoal, boa tarde!

Por favor, alguém mais capacitado poderia me ajudar a resolver esse problema?

Problema número1:

preciso alterar algumas informações em lote (código, descrição e NCM) de mais de 130 produtos

solução

eu criei uma macro para realizar a tarefa.

problema número2:

essa macro funciona apenas para o primeiro produto (eu estou com dificuldades para criar um laço de repetição)

abaixo o código e anexo a planilha contendo as informações.

Sub substituir_informações()
    Sheets("MODELO DO ARQUIVO ").Select
    Range("C3").Select
    Sheets("INFORMAÇÕES DOS PRODUTOS").Select
    Range("A2").Select
    Selection.Cut
    Sheets("MODELO DO ARQUIVO ").Select
    ActiveSheet.Paste
    Range("E3").Select
    Sheets("INFORMAÇÕES DOS PRODUTOS").Select
    Range("B2").Select
    Selection.Cut
    Sheets("MODELO DO ARQUIVO ").Select
    ActiveSheet.Paste
    Range("H3").Select
    Sheets("INFORMAÇÕES DOS PRODUTOS").Select
    Range("C2").Select
    Selection.Cut
    Sheets("MODELO DO ARQUIVO ").Select
    ActiveSheet.Paste
End Sub

agradeço muito a todos pela atenção.

muito obrigado

 
Postado : 16/10/2018 11:10 am
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
 

Boa Tarde, segue:

Sub substituir_informações()
    For Each cel In Plan2.Range("A2:A" & Plan2.Range("A1").CurrentRegion.Rows.Count)
        ul = Plan1.Range("A" & Rows.Count).End(xlUp).Row
        If IsNumeric(cel) Then
        
        For i = 1 To ul
          If Plan1.Range("A" & i).Value = "I" And _
          Plan1.Range("C" & i).Value = "" Then
                Plan1.Range("C" & i).Value = cel.Value
                Plan1.Range("E" & i).Value = cel.Offset(0, 1).Value
                Plan1.Range("H" & i).Value = cel.Offset(0, 2).Value
             GoTo proximo
          End If
         
        Next i
        
        End If
proximo:
    Next
    
End Sub

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 16/10/2018 12:38 pm