Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Critério dentro da Listbox (precisar estar selecionado)
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Ter Out 27, 2015 1:01 pm
Critério dentro da Listbox (precisar estar selecionado)
Olá e muito boa tarde, é a primeira vez que posto num fórum, porem já utilizo como pesquisa a muito tempo. Vamos lá, notei que um colega postou algo semelhante, mas como minha duvida é diferente, resolvi criar um novo.
Tenho uma Listbox com mais de 2000 linhas, e utilizo filtros para reduzir a quantidade de linhas que vou utilizar, e chego por exemplo a uma situação de 3 linhas. Certo.
Quero executar uma consulta atualização na base dessas linhas, de acordo com os critérios das Colunas (0) e (2) da listbox, e utilizo um While para ele ir da linha 0 até ultima, neste caso a linha 2. (total 3 registros).
O dilema, se eu clicar antes de rodar a consulta ele executa para a primeira linha da listbox e a seleção da listbox desaparece, e o ciclo continua.
Ao retornar ao ciclo, não há mais seleção sobre a listbox e então meus critérios das colunas (0) e (2) a partir daí são "Nulos".
Tentei contornar com Listbox.Selected(i) = True, ele até "MARCA", mas não é interpretado como um "CLICAR", e então o ACCESS retorna Nulo.
O que preciso? Grosseiramente... de um código que clique para mim a cada ciclo do meu While.
Muito obrigado já adiantado.
Tenho uma Listbox com mais de 2000 linhas, e utilizo filtros para reduzir a quantidade de linhas que vou utilizar, e chego por exemplo a uma situação de 3 linhas. Certo.
Quero executar uma consulta atualização na base dessas linhas, de acordo com os critérios das Colunas (0) e (2) da listbox, e utilizo um While para ele ir da linha 0 até ultima, neste caso a linha 2. (total 3 registros).
O dilema, se eu clicar antes de rodar a consulta ele executa para a primeira linha da listbox e a seleção da listbox desaparece, e o ciclo continua.
Ao retornar ao ciclo, não há mais seleção sobre a listbox e então meus critérios das colunas (0) e (2) a partir daí são "Nulos".
Tentei contornar com Listbox.Selected(i) = True, ele até "MARCA", mas não é interpretado como um "CLICAR", e então o ACCESS retorna Nulo.
O que preciso? Grosseiramente... de um código que clique para mim a cada ciclo do meu While.
Muito obrigado já adiantado.
Re: Critério dentro da Listbox (precisar estar selecionado)
Bruno,
Ver o código ajudaria, entretanto, você não precisa ter o item selecionado para coletar seus dados, bastando user a propriedade List(linha, coluna) para ter acesso a ele.
Att
Ver o código ajudaria, entretanto, você não precisa ter o item selecionado para coletar seus dados, bastando user a propriedade List(linha, coluna) para ter acesso a ele.
Att
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Ter Out 27, 2015 1:01 pm
Re: Critério dentro da Listbox (precisar estar selecionado)
Prezado colega, obrigado por responder, fiz algumas tentativas, mas como esperava não tive sucesso, envio meu código "simples" para sua análise.
pra tentar ajudar, dou uma breve recapitulada: Minha lista98 está 3 linhas, referentes uma pequena parte de uma tabela de 2000 linhas, e estas três tem um campo "OS" que quero que seja atualizada pelo texto contido na "Texto15.Value", e minha brilhante idéia foi de resgatar o valor que está na linha (i = 1~3) colunas 0 e 2. E Obrigado novamente.
pra tentar ajudar, dou uma breve recapitulada: Minha lista98 está 3 linhas, referentes uma pequena parte de uma tabela de 2000 linhas, e estas três tem um campo "OS" que quero que seja atualizada pelo texto contido na "Texto15.Value", e minha brilhante idéia foi de resgatar o valor que está na linha (i = 1~3) colunas 0 e 2. E Obrigado novamente.
Código: Selecionar todos
Private Sub Comando10_Click()
i = 0
While i < Lista98.ListCount - 1
SQL = ""
SQL = SQL & "UPDATE ENT_CTR_TECN SET ENT_CTR_TECN.OS_PEP = '" & Texto105.Value & "'"
SQL = SQL & " WHERE (((ENT_CTR_TECN.FORNECEDOR)= '" & Lista98.Column(0) & "') AND ((ENT_CTR_TECN.NF)= '" & Lista98.Column(2) & "'));"
CurrentDb.Execute SQL
Lista98.Requery
i = i + 1
Wend
End Sub
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Critério dentro da Listbox (precisar estar selecionado)
Sem muita analise, porque do Lista98.Requery?? dentro do while
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Ter Out 27, 2015 1:01 pm
Re: Critério dentro da Listbox (precisar estar selecionado)
Minha lista se monta com um select de todas as linhas da base, com um critério de Campo OS = " Vazio ",
então esse requery vai fazer que as linhas que receberem a OS, irão desaparecendo da listbox.
isso está funcionando se eu marcar com o mouse a linha, só que ele não está fazendo o ciclo, faz só a primeira vez.
então esse requery vai fazer que as linhas que receberem a OS, irão desaparecendo da listbox.
isso está funcionando se eu marcar com o mouse a linha, só que ele não está fazendo o ciclo, faz só a primeira vez.
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Ter Out 27, 2015 1:01 pm
Re: Critério dentro da Listbox (precisar estar selecionado)
Olá senhores,
Gostaria de saber se devo marcar como resolvido ou se temos uma solução para o exposto.
Obrigado.
Gostaria de saber se devo marcar como resolvido ou se temos uma solução para o exposto.
Obrigado.
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Critério dentro da Listbox (precisar estar selecionado)
Retire o Lista98.Requery do evento while e o coloque depois do wend, assim suponho que resolvera sua demanda
Código: Selecionar todos
Private Sub Comando10_Click()
i = 0
While i < Lista98.ListCount - 1
Sql = ""
Sql = Sql & "UPDATE ENT_CTR_TECN SET ENT_CTR_TECN.OS_PEP = '" & Texto105.Value & "'"
Sql = Sql & " WHERE (((ENT_CTR_TECN.FORNECEDOR)= '" & Lista98.Column(0) & "') AND ((ENT_CTR_TECN.NF)= '" & Lista98.Column(2) & "'));"
CurrentDb.Execute Sql
i = i + 1
Wend
Lista98.Requery
End Sub
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Ter Out 27, 2015 1:01 pm
Re: Critério dentro da Listbox (precisar estar selecionado)
Caro Reinaldo obrigado pelo parecer.
Infelizmente sei responder sua pergunta, mesmo assim fiz o teste. Bem o caso do Listrequery posso retirar, isso não me atrapalha.
O que está "não funcionando" no momento, é que não estou conseguindo fazer que meus campos de critério reconheçam a informação que estou pedindo, está retornando nulo.
Creio que estou errando no código que referencia aos valores das colunas 0 e 3 da lista. Mas o mais estranho é que se eu clicar com o Mouse, ele reconhece normal e funciona tudo, acontece que quando roda o ciclo e ele vai ler a linha 2, não o tal "clique", então retorna nulo novamente.
Espero ter dado mais informações uteis.
Infelizmente sei responder sua pergunta, mesmo assim fiz o teste. Bem o caso do Listrequery posso retirar, isso não me atrapalha.
O que está "não funcionando" no momento, é que não estou conseguindo fazer que meus campos de critério reconheçam a informação que estou pedindo, está retornando nulo.
Creio que estou errando no código que referencia aos valores das colunas 0 e 3 da lista. Mas o mais estranho é que se eu clicar com o Mouse, ele reconhece normal e funciona tudo, acontece que quando roda o ciclo e ele vai ler a linha 2, não o tal "clique", então retorna nulo novamente.
Espero ter dado mais informações uteis.
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Critério dentro da Listbox (precisar estar selecionado)
Pelo exposto entendi que sua listbox ja está filtrada, e seria apenas efetuar um update. Não e isso?
Voçe deseja efetuar o update considerando todos os itens em um listbox, carregando os dados em text's?
Se for isso, creio que voce tem a rotina click estabelecida, pois disse "e eu clicar com o Mouse, ele reconhece normal", assim você pode a cada registro chamar esse evento.
Seria algo+/- assim:
Voçe deseja efetuar o update considerando todos os itens em um listbox, carregando os dados em text's?
Se for isso, creio que voce tem a rotina click estabelecida, pois disse "e eu clicar com o Mouse, ele reconhece normal", assim você pode a cada registro chamar esse evento.
Seria algo+/- assim:
Código: Selecionar todos
Private Sub Comando10_Click()
i = 0
While i < Lista98.ListCount - 1
call list98_click 'verifique e altere para o nome real de sua rotina.
Sql = ""
Sql = Sql & "UPDATE ENT_CTR_TECN SET ENT_CTR_TECN.OS_PEP = '" & Texto105.Value & "'"
Sql = Sql & " WHERE (((ENT_CTR_TECN.FORNECEDOR)= '" & Lista98.Column(0) & "') AND ((ENT_CTR_TECN.NF)= '" & Lista98.Column(2) & "'));"
CurrentDb.Execute Sql
i = i + 1
Wend
Lista98.Requery
End Sub
-
- Acabou de chegar
- Mensagens: 8
- Registrado em: Ter Out 27, 2015 1:01 pm
Re: Critério dentro da Listbox (precisar estar selecionado)
Professor pelo que entendi você me sugere um código que faça um clique para mim, ótimo.
Eu procuro desde ontem esse código, encontro muitas pessoas pedindo isso, e no máximo o que encontrei, foi um Select, que gera uma marcação, mas não o dito clique.
Existe um código para esta tarefa? A de clicar dentro da minha listbox?
Eu procuro desde ontem esse código, encontro muitas pessoas pedindo isso, e no máximo o que encontrei, foi um Select, que gera uma marcação, mas não o dito clique.
Existe um código para esta tarefa? A de clicar dentro da minha listbox?