Notifications
Clear all

Procurar um código e inserir Preço

3 Posts
2 Usuários
0 Reactions
1,279 Visualizações
(@humberto)
Posts: 76
Estimable Member
Topic starter
 

Prezados, boa tarde.

Estou com uma duvida para executar um comando VBA, eu preciso digitar um código(Coluna a) em formulário VBA que eu vou criar, o comando vai buscar na planilha esse código que eu digitei e no mesmo formulário eu insiro o preço(Coluna E) de um produto e quando eu clicar em inserir já abastece o campo preço deste produto na planilha de dados.
É um como se eu acionasse o comando localizar do Excel manualmente e fosse no campo do preço e alterasse ou inserisse o preço.
O form do VBA vai conter apenas as Labels; Digite o código , Digite o preço; os textBoxs código e preço; e dois botões inserir e cancelar.
Espero que possam me ajudar.

Abs.

 
Postado : 08/07/2020 1:41 pm
(@srobles)
Posts: 231
Estimable Member
 

humberto,

Adicione em um módulo, o que se segue :

Sub atualizaPreco(ByVal CodProduto As String, ByVal precoProd As Double)
    Dim planBase As Worksheet
    Dim pesqProduto
    
    Set planBase = ThisWorkbook.Sheets(1)
    
    With planBase
        With .Range("A:A")
            Set pesqProduto = .Find(CodProduto, LookAt:=xlWhole)
                If Not pesqProduto Is Nothing Then
                    .Cells(pesqProduto.Row, "E") = precoProd
                    MsgBox "Preço do produto " & CodProduto & " atualizado com sucesso!", vbInformation, _
                    "Atualização de preço"
                Else
                    MsgBox "Produto : " & UCase(CodProduto) & " não localizado!", vbExclamation, "Erro"
                    Exit Sub
                End If
            Set pesqProduto = Nothing
        End With
    End With
End Sub

E no evento do botão contido no UserForm :

Private Sub CommandButton1_Click()
    If Not IsEmpty(TextBox1) Then
        If Not IsEmpty(TextBox2) And IsNumeric(TextBox2) Then
            Call atualizaPreco(TextBox1, CDbl(TextBox2))
        Else
            MsgBox "Favor informe o preço do produto!", vbExclamation, "PREÇO"
        End If
    Else
        MsgBox "Favor informe o código do produto!", vbExclamation, "CÓDIGO"
    End If
End Sub

Favor, teste e retorne.

Espero ter ajudado.

Abs.

Saulo Robles

 
Postado : 08/07/2020 9:41 pm
(@humberto)
Posts: 76
Estimable Member
Topic starter
 

Bom dia.

Ajustei o código conforme a minha necessidade e deu certo.

Muito Obrigado!!!

Abs.

 
Postado : 09/07/2020 6:46 am