Olá!
Estou precisando de uma macro que impede de inserir dados duplicados a partir da linha 2 da coluna "F" da planilha. Gostaria também que desse uma mensagem que já existe um registro igual. Estou usando um formulário em UserForm com botão. Segue o código que estou usando.
Sub Inserir()
Sheets("B.Dados").Select
Application.ScreenUpdating = False
With ActiveWorkbook.Worksheets("Plan1")
linha = 2
While Sheets("B.Dados").Cells(linha, 2) <> ""
linha = linha + 1
Wend
Sheets("B.Dados").Cells(linha, 1) = UserForm1.ComboCliente.Text
Sheets("B.Dados").Cells(linha, 2) = CDate(UserForm1.TextBoxData)
Sheets("B.Dados").Cells(linha, 4) = UserForm1.ComboMotorista.Text
Sheets("B.Dados").Cells(linha, 5) = UserForm1.ComboEntregador.Text
Sheets("B.Dados").Cells(linha, 6) = CDbl(UserForm1.TextBoxNVenda)
Sheets("B.Dados").Cells(linha, 7) = UserForm1.ComboEntrega.Text
Sheets("B.Dados").Cells(linha, 8) = UserForm1.ComboUsuário.Text
Sheets("B.Dados").Cells(linha, 11) = UserForm1.TextBoxSituação.Text
End With
Application.ScreenUpdating = True
Sheets("Plan1").Select
MsgBox "Dados cadastrados com sucesso.", , "Confirmação"
End Sub
Abraços,
Celso
Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Não inserir dados duplicados
-
- Colaborador
- Mensagens: 35
- Registrado em: Ter Jun 29, 2010 2:23 pm
Re: Não inserir dados duplicados
Celso,
Você pode usar a função CountIf.
Por exemplo
Você pode usar a função CountIf.
Por exemplo
Código: Selecionar todos
Private Sub CommandButton1_Click()
If WorksheetFunction.CountIf(Range("A1:A20"), TextBox1.Value) > 0 And TextBox1 <> "" Then
MsgBox "Esse valor já existe"
End If
End Sub
-
- Acabou de chegar
- Mensagens: 2
- Registrado em: Qui Jun 11, 2020 5:28 pm
-
- Acabou de chegar
- Mensagens: 2
- Registrado em: Qui Jun 11, 2020 5:28 pm