Criando o Efeito ListBox para ListBox no Access

ListBox para ListBox no Access: Aprenda a criar este efeito de forma simples

Neste tutorial você vai aprender como criar o efeito ListBox para ListBox no Access. 😲

Certamente você alguma vez já se deparou com algum Assistente no Access ou em outro aplicativo que produz este efeito e teve muita curiosidade como isto pode ser feito. Vamos mostrar um passo-a-passo de como isto pode ser feito de uma forma bem básica, utilizando os recursos que o Microsoft Access disponibiliza e um pequeno código de VBA para completar o efeito.

Então acompanhe este tutorial e depois tente criar na sua máquina.💪

Dê um play no vídeo e veja o efeito!!👇👇👇

Com base neste template que fizemos, primeiramente criamos uma tabela com 2 campos: O 1º com o nome de alguns estados e o 2º campo chamado de Status.

accessfacil.com

O que este campo representa neste template? Este campo numérico será atualizado a medida que ele for adicionado ou removido. Vamos adotar o valor 0 para adição e o 1 para remoção. No decorrer do tutorial você irá entender melhor esta parametrização.👌

ListBox para ListBox no Access: Criando o Formulário que produzirá o efeito

No formulário que criamos, colocamos 2 ListBoxes não acoplados, um chamado de ListBox1 e o outro ListBox2. Criamos também 2 botões, conforme abaixo:

accessfacil.com

No ListBox1, a Origem da Linha do listbox será a tabela que chamamos de tblEstados, mas serão carregados apenas os itens que possuem o valor zero(0) no campo status, conforme abaixo:

accessfacil.com

Já no ListBox2, a Origem da Linha deste listbox também será a tabela que chamamos de tblEstados, mas serão carregados apenas os itens que possuem o valor um(1) no campo status, conforme abaixo:

accessfacil.com

ListBox para ListBox no Access: Criando as Consultas Atualizar para identificar as Adições e as Remoções do ListBox

Agora precisamos criar 2 Consultas Atualizar,

A 1ª será executada via VBA, assim que eu escolher um item no ListBox1 e clicar no botão adicionar. Ela vai atualizar o Status do item, passando do valor zero(0) para um(1).

accessfacil.com

Repare que o critério da consulta está fazendo referência a ListBox1 ([Forms]![frmEstados].[listBox1]) e o valor que será atualizado para 1.

A 2ª será executada também via VBA, assim que eu escolher um item no ListBox2 e clicar no botão remover. Ela vai atualizar o Status do item, passando do valor um(1) para zero(0).

accessfacil.com

Repare que o critério da consulta está fazendo referência a ListBox2 ([Forms]![frmEstados].[listBox2]) e o valor que será atualizado para 0.

ListBox para ListBox no Access: Criando as ações dos 2 botões

Neste 1º código, do evento ao clicar do botão Adicionar, desabilitamos a mensagem padrão de confirmação do Access, e executamos a consulta que chamamos de qryAtualizar_lb1 (Atualiza a ListBox1) que acabamos de criar. Depois habilitamos as mensagens padrão do Access e atualizamos os 2 listboxes.

Sub btnAdicionar_Click()

    DoCmd.SetWarnings (False)
    DoCmd.OpenQuery "qryAtualizar_lb1", acViewNormal
    DoCmd.SetWarnings (True)
    Me!listBox1.Requery
    Me!listBox2.Requery

End Sub

Neste 2º código, do evento ao clicar do botão Remover, desabilitamos a mensagem padrão de confirmação do Access, e executamos a consulta que chamamos de qryAtualizar_lb2 (Atualiza a ListBox2) que acabamos de criar. Depois habilitamos as mensagens padrão do Access e atualizamos os 2 listboxes.

Sub btnRemover_Click()

    DoCmd.SetWarnings (False)
    DoCmd.OpenQuery "qryAtualizar_lb2", acViewNormal
    DoCmd.SetWarnings (True)
    Me!listBox1.Requery
    Me!listBox2.Requery

End Sub

Pronto. Agora você pode executar e ver o efeito criado.👍

Curso de Access VBA Completo: Do Básico ao Avançado.

Quer aprender a programar no Access? Clique na imagem abaixo:

Por fim, deixe seu comentário sobre o que achou, se usar este recurso e você também pode enviar a sua sugestão para os próximos posts.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *