MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    Verificação de duplicidade através de textbox

    avatar
    Jackszen78
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 03/05/2017

    Verificação de duplicidade através de textbox Empty Verificação de duplicidade através de textbox

    Mensagem  Jackszen78 3/5/2017, 19:01

    Pessoal,
    estou fazendo um programinha em VBA para cadastrar produtos, porém, preciso que assim que o valor de uma text box for completado (atraves de leitor de código de barras) ou digitado, seja feita uma varredura na coluna b da planilha (código de barras) para verificar se há duplicidade, se houver, uma mensagem de aviso deve ser mostrada bem como a textbox limpa automaticamente, e no caso de não haver duplicidade, a gravação possa seguir seu curso!

    poderiam me ajudar por favor?
    avatar
    misaelsp
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 97
    Registrado : 20/02/2013

    Verificação de duplicidade através de textbox Empty Re: Verificação de duplicidade através de textbox

    Mensagem  misaelsp 3/5/2017, 21:54

    Boa Tarde.

    Para verificar se tem duplicidade é só realizar uma busca na planilha usando um critério de busca baseado no valor que você quer verificar.

    se for em uma tabela por exemplo, ficaria assim:

    dim varVerifica

    varVerifica = dlookup ("nome do campo", "nome da tabela", "nome do campo para criterio de busca = valor desejado para comparação"


    se retornar algum valor é porque há duplicidade. se não retornar, não há duplicidade. pra verificar se retornou algum valor é só fazer um if.

    ex:
    if varVerifica > 0 then
    msgbox "Há duplicidade"
    end if


    espero ter ajudado. Smile


    .................................................................................
    É fazendo que se aprende a fazer aquilo que se deve aprender a fazer Very Happy
    avatar
    Jackszen78
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 03/05/2017

    Verificação de duplicidade através de textbox Empty Re: Verificação de duplicidade através de textbox

    Mensagem  Jackszen78 4/5/2017, 00:23

    Obrigado pela Pronta ajuda, mas na verdade, preciso de algo um pouco mais complexo, tipo quando inserido um valor na textbox (Barras), e se o valor for repetir na coluna da B da planilha, uma mensagem de aviso deverá aparecer e este valor não poderá ser gravado na planilha, mais se o valor não for repetido, ai sim prosseguir com a gravação na planilha!

    fiz o código abaixo, ele está funcionando para verificar a repetição, porém, mesmo que o valor da textbox (barras) esteja repetido, ainda sim o mesmo está possibilitando a gravação na planilha, é isso que preciso evitar!

    Private Sub Salvar_Click()

    Dim lngRow As Long

    lngRow = fncMatch(Me.Barras.Value, ThisWorkbook.Worksheets("Plan6Produtos").Columns("B"))
    If lngRow > 0 Then
    MsgBox "Este Produto já está cadastrado!", vbInformation

    'Limpar as caixas de texto
    Barras.Value = Empty
    Código.Value = Empty
    Produto.Value = Empty
    Classificação.Value = Empty
    Custo.Value = Empty
    Venda.Value = Empty



    'Colocar o foco na primeira caixa de texto
    Barras.SetFocus

    'se o valor não for repetir, Prosseguir o cadastro
    Else
    End If
    End Sub
    Function fncMatch(ByVal str As String, ByVal varVetor As Variant) As Long
    Dim Temp As Long

    On Error Resume Next
    Temp = WorksheetFunction.Match(str + 0, varVetor, 0)
    If Temp = 0 Then Temp = WorksheetFunction.Match(CStr(str), varVetor, 0)
    fncMatch = Temp



    'Ativar a sexta planilha
    ThisWorkbook.Worksheets("Plan6Produtos").Activate
    'Selecionar a célula B4
    Range("B4").Select
    'Procurar a primeira célula vazia
    Do
    If Not (IsEmpty(ActiveCell)) Then
    ActiveCell.Offset(1, 0).Select
    End If
    Loop Until IsEmpty(ActiveCell) = True
    'Carregar os dados digitados nas caixas de texto para a planilha
    ActiveCell.Offset.Value = Barras.Value
    ActiveCell.Offset(0, 1).Value = Código.Value
    ActiveCell.Offset(0, 2).Value = Produto.Value
    ActiveCell.Offset(0, 3).Value = Classificação.Value
    ActiveCell.Offset(0, 4).Value = Custo.Value
    ActiveCell.Offset(0, 5).Value = Venda.Value
    'Limpar as caixas de texto
    Barras.Value = Empty
    Código.Value = Empty
    Produto.Value = Empty
    Classificação.Value = Empty
    Custo.Value = Empty
    Venda.Value = Empty

    'Colocar o foco na primeira caixa de texto
    Barras.SetFocus


    End Function

    Conteúdo patrocinado


    Verificação de duplicidade através de textbox Empty Re: Verificação de duplicidade através de textbox

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 09:37