Bom dia!
Não sei se vai ajudar, mas acho que dá pra fazer o que você quer de dois jeitos.
O primeiro jeito é com um banco de imagens, uma pasta que você deve armazenar as imagens de cada item. Para facilitar você deve nomear cada imagem com o nome na lista, no seu exemplo: BANANA, MACA (pelo que sei VBA não aceita acento, você vai ter que mudar o nome na lista também, senão não acha a figura), PERA.
Aí você coloco esse código no formulário:
Private Sub 'nome_da_Listbox'_Change()
Me.'Nome_da_caixa_de_imagem'.Picture = LoadPicture("'Caminho_da_imagem' " & me.'Nome_da_Listbox'.Value & ".'extensao_da_imagem'")
End Sub
Assim quando você selecionar um item da lista ele vai exibir a imagem correspondente. esse jeito é bom caso as imagens não sejam sempre as mesmas, ou caso possa adicionar novos nomes, porque fica mais fácil alterar ou adicionar as imagens na pasta que está usando de banco de dados.
Outro jeito de fazer é criar um monte de caixa de imagem, e exibir apenas a caixa correspondente ao material selecionado, por exemplo para sua lista.
Private Sub 'nome_da_Listbox'_Change()
If Me.'nome_da_Listbox'.Value = "BANANA" Then
Me.Im_BANANA.Visible = True
Me.Im_MACA.Visible = False
Me.Im_PERA.Visible = False
ElseIf Me.'nome_da_Listbox'.Value = "MACA" Then
Me.Im_BANANA.Visible = False
Me.Im_MACA.Visible = True
Me.Im_PERA.Visible = False
ElseIf Me.'nome_da_Listbox'.Value = "PERA" Then
Me.Im_BANANA.Visible = False
Me.Im_MACA.Visible = False
Me.Im_PERA.Visible = True
End If
End Sub
Dá pra fazer por loop também (fica bem mais simples), mas não lembro exatamente como é, e agora não consigo pesquisar.
PS. não testei aqui, pode ser que tenha algum erro, qualquer coisa é só falar.
Postado : 06/01/2014 5:47 am