MaximoAccess

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

Obrigado

Administração do MaximoAccess

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


    [Resolvido]Loop dentro do Recordset

    marcelo3092
    marcelo3092
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 19/08/2010

    [Resolvido]Loop dentro do Recordset Empty [Resolvido]Loop dentro do Recordset

    Mensagem  marcelo3092 em 18/6/2019, 23:49

    Boa noite pessoal estou precisando de uma ajudinha aqui com o recordset o que preciso e fazer um filtro para verificar em uma tabela mysql se o determinado valor ja exista na tabela se existi aparece mensagem informando se nao adiciona o valor.
    O que tenho e um formulario de produto e criei uma combox com os valores de 1 a 46 e tenho uma listbox que carrega os numeros que tao cadastrados, e coloquei um botao onde coloco essa função para verificar se ja esta adicionado o valor na tabela mysql


    Call Conexao_Open("select * from tblprodutos_numeracao where Cod_Produto = " & Me.Cod_Produto & ";")


    If Me.ListaNumeracao.Column(0) = Me.CbxNumeracao Then
    'tentei tambem Rs("NSapato")


    MsgBox "NUMERO JA EXISTE"

    Else

    Rs.AddNew
    Rs.Fields("Cod_Produto").Value = Me.Cod_Produto
    Rs.Fields("NSapato").Value = Me.CbxNumeracao
    Rs.Fields("Produto").Value = Me.Produto
    Rs.Update

    End If


    Rs.Close 'fecha o recorset
    cn.Close 'fecha o banco de dados


    Alguem pode da Uma maozinha desde já agradeço pessoal.
    avatar
    renpv
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 155
    Registrado : 12/01/2015

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  renpv em 19/6/2019, 19:21

    marcelo3092 escreveu:preciso e fazer um filtro para verificar em uma tabela mysql se o determinado valor ja exista na tabela

    Não precisa usar recordset nem loop pra fazer isso, basta usar a função DCount

    Ex. contador = DCount("*", "tabelaDoBancoDeDados", "condiçãoDoTipoWhere"))
    marcos_novack
    marcos_novack
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 19/01/2011

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  marcos_novack em 19/6/2019, 21:08

    IvanJr.
    IvanJr.
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 652
    Registrado : 22/11/2016

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  IvanJr. em 20/6/2019, 00:31

    Grande, Marcos. Já ia indicar este tópico.


    .................................................................................
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    Sempre tente entender o código, não somente copie e cole.
    marcelo3092
    marcelo3092
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 19/08/2010

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  marcelo3092 em 22/6/2019, 01:59

    Ola Pesoal Boa noite eu ate conheço o dcount dlookup..
    Porem meu problema esta relacionado a um banco de dados mysql online e os dados para comparação estao dentor de uma listbox o que queria fazer era percorrer a listbox mais precisamente na coluna 1, ao clicar no botão ele percorra todos os dados da listbox comparando com o valor da combox que vai de 1 a 46 e avendo o valor ja na listbox ele exibe uma mensagem que ja esta adicionado se não ele executa a adição, o que ocorre e que ele so compara o valor da listbox se estiver selecionado algum valor se não tiver ele não compara.
    Se alguem puder me ajudar seria no caso algo assim

    If me.combox = me.listbox then

    msgbox "valor ja existe"

    else

    'Rs.AddNew
    'Rs.Fields("Cod_Produto").Value = Me.Cod_Produto
    'Rs.Fields("NSapato").Value = Me.CbxNumeracao
    'Rs.Fields("Produto").Value = Me.Produto
    'Rs.Update

    end if

    Agradeço a atenção.
    Obrigado.
    marcos_novack
    marcos_novack
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 50
    Registrado : 19/01/2011

    [Resolvido]Loop dentro do Recordset Empty REP:

    Mensagem  marcos_novack em 22/6/2019, 23:43

    Boa Noite

    Seguinte, os dados que estão na listbox é uma tblListbox, os dados da combox é tblCombobox certo?

    Na minha visão deveria pensar nas tabelas e não nos objetos, já que esses dois objetos são apenas uma visão da tabela ok.


    Código:
    dim strFuncaoD 'Defina tipo

    strFuncaoD = DContX("Campo1", "Tbllistbox", "campo1='" & me.combobox & "'")

    If strFuncaoD > 0 then

    Msgbox "  A função Dcount encontrou " & strFuncaoD & " registro"

    Else

    'execute o código aqui...

    end if

    As funções do link que compartilhamos foram feitas para trabalhar com base de dados desvinculadas incluindo MySql também é só inserir a sua conexão com banco MySql.
    marcelo3092
    marcelo3092
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 19/08/2010

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  marcelo3092 em 22/6/2019, 23:52

    Ola amigo marcos ai que ta eles sao trazidos da base mysql da seguinte forma

    Public Sub CarregaNumeros()

    ListaNumeracao.RowSource = Empty
    ListaNumeracao.Requery


    sSQL = "SELECT Cod_Produto, NSapato, Estoque FROM tblprodutos_numeracao where Cod_produto=" & Me.Cod_Produto & " Order By NSapato Asc;"
    Call Conexao_Open(sSQL)

    Do While Not Rs.EOF
    ListaNumeracao.AddItem "" & Rs("Cod_Produto") & ";" & Rs("NSapato") & ";" & Rs("Estoque") & ""
    Rs.MoveNext
    Loop

    Rs.Close
    Set Rs = Nothing

    End Sub



    ela é alimentada.

    e a combox ela e definido não puxa de tabela do numero 1 ao 46 ta chumbado no codigo.

    a ideia ao escolher o numero na combox e clicar num botao ele percorrer a listbox e comparar com o numero da combox se for igual mensagem se for diferente adiciona.

    Ja ouvi falar da função listcount mais n sei como proceder.
    marcelo3092
    marcelo3092
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 19/08/2010

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  marcelo3092 em 23/6/2019, 00:56

    Estou tentando executar um for dentro do listbox porem sem successo.


    contador = 0

    For Linha = 0 To ListaNumeracao.ListCount - 1

    If ListaNumeracao.Column(Linha, 1) = Me.Texto253 Then
    contador = contador + 1
    Else
    ListaNumeracao.Selected(Linha) = False
    End If
    Next

    If contador < 1 Then
    MsgBox "nao existe"
    End If

    Se alguem puder da uma maozinha
    marcelo3092
    marcelo3092
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 151
    Registrado : 19/08/2010

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  marcelo3092 em 23/6/2019, 01:46

    Ta ai pessoal a solução.


    contador = 0

    For Linha = 0 To ListaNumeracao.ListCount - 1

    If ListaNumeracao.Column(1, Linha) = Me.CbxNumeracao.Column(0) Then
    MsgBox "Numeração Já Existe.", vbInformation, Titulo
    ListaNumeracao.Selected(Linha) = True
    contador = contador + 1

    Else
    ListaNumeracao.Selected(Linha) = False
    End If
    Next

    If contador < 1 Then

    Call SALVAR_NUMERACAO
    Call CarregaNumeros

    End If

    Conteúdo patrocinado

    [Resolvido]Loop dentro do Recordset Empty Re: [Resolvido]Loop dentro do Recordset

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 18/7/2019, 16:42