Página 1 de 1

Critério no Do Until

Enviado: 23 Ago 2017 às 18:43
por BetoSSena
Amigos, boa noite.

Estou quebrando a cabeça com isso, se algum puder ajudar.

Abaixo temos um Do Until , que ele busca o codigo "15" e substitui por outro dado.
Gostaria de saber se na variável e possível fazer buscar informações de uma coluna especifica.

Exemplo na coluna A teria os dados a ser consultado e na B o que deveria ser incluso.
Poderia fazer uma para cada como o exemplo abaixo, o problema é que a planilha original vai trabalhar com muitos registros.

A | B
1 | F
2 | G
3 | H


Sub Acao()

Dim Ele As String
Dim Lin As Integer

Ele = 15

Do Until Plan2.Cells(Linh, 11).Value = ""
If Plan2.Cells(Linh, 11).Value = Ele Then

Plan2.Cells(Linh, 11).Value = 32
Plan2.Cells(Linh, 12).Value = "GRAZIENE"
Linh = Linh + 1
End If
Linh = Linh + 1

Loop

End Sub

Re: Critério no Do Until

Enviado: 24 Ago 2017 às 06:25
por gfranco
Bom dia.
Sugiro postar sua planilha (pode ser com dados fictícios MAS MESMA ESTRUTURA) para facilitar ajudar-lhe.
Para anexar clique em + RESPOSTA e, abaixo da janela de digitação utilize a opção: ADICIONAR UM ANEXO.
Att
GFranco

Re: Critério no Do Until

Enviado: 24 Ago 2017 às 09:18
por wesleyribeiro123
Beto
Bom dia,

Pelo que pude perceber, acredito que você está tentando criar um DE PARA em tua macro...
O que eu fiz foi incluir um laço FOR NEXT para ler os valores da Coluna 1 ("A") e atribuir a variável "Ele"...
Não sei se era exatamente isso que precisa, como dito pelo nosso amigo GFranco, é necessário que poste um exemplo da planilha para que a solução seja mais assertiva...

Peço apenas que altere o valor de "1" para o índice da Coluna onde o laço FOR deva buscar as informações para atribuir a variável "Ele".
Código: Selecionar todos
Sub Acao()
Dim Ele As String, Lin As Integer, uLin As Integer
uLin = Plan2.Cells(Rows.Count, 1).End(xlUp).Row 'Identificando a Última Linha preenchida

'~> uLin é uma variável criada para receber os valores da Linha
For x = 1 To uLin
Ele = Plan2.Cells(x, 1).Value 'Estamos atribuindo o valor da célula à Variável
    Do Until Plan2.Cells(Linh, 11).Value = ""
        If Plan2.Cells(Linh, 11).Value = Ele Then
            Plan2.Cells(Linh, 11).Value = 32
            Plan2.Cells(Linh, 12).Value = "GRAZIENE"
        Linh = Linh + 1
        End If
    Linh = Linh + 1
    Loop
Next x
End Sub

Critério no Do Until

Enviado: 24 Ago 2017 às 17:39
por BetoSSena
Obrigado pela força GFranco e Wesleyribeiro123

Consegui resolver meu problema.