Notifications
Clear all

Preenchendo listbox com condições do combobox

14 Posts
2 Usuários
0 Reactions
1,860 Visualizações
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Pessoal,

No exemplo anexado a esse tópico, apresento-lhes um projeto de avaliação de desempenho dos empregados.

Sempre que qualquer questão for avaliada com A ou D, sendo A os Pontos Fortes, e D os Pontos Fracos. Isso já acontece, mas necessito que, se o usuário substituir uma letra A, ou D, o item da listbox seja apagado.

Creio que listbox não tem checkbox. Eu preciso de checkbox, o que devo fazer?

 
Postado : 22/01/2015 10:33 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Não entendi "Eu preciso de checkbox,"
Quanto a incluir/alterar vejano anexo
Suas rotinas foram alteradas conforme abaixo

Private Sub ComboBox10_Change()
AcertaForteFraco
End Sub

Private Sub ComboBox5_Change()
AcertaForteFraco
End Sub

Private Sub ComboBox6_Change()
AcertaForteFraco
End Sub

Private Sub ComboBox7_Change()
AcertaForteFraco
End Sub

Private Sub ComboBox8_Change()
AcertaForteFraco
End Sub

Private Sub ComboBox9_Change()
AcertaForteFraco
End Sub

Private Sub UserForm_Initialize()
Dim x As Integer
For x = 5 To 10
Controls("Combobox" & x).AddItem "A"
Controls("Combobox" & x).AddItem "B"
Controls("Combobox" & x).AddItem "C"
Controls("Combobox" & x).AddItem "D"
Next

End Sub
Private Sub AcertaForteFraco()
ListBox1.Clear
ListBox2.Clear
 For x = 5 To 10
    If Controls("Combobox" & x).Text = "A" Then
        ListBox1.AddItem Controls("Label" & x + 5).Caption
    ElseIf Controls("Combobox" & x).Text = "D" Then
        ListBox2.AddItem Controls("Label" & x + 5).Caption
    End If
Next
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/01/2015 11:14 am
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Reinaldo,

Eu preciso/precisava que a listbox tivesse checkbox, iguais ou parecidos com os da listview, mas você já adiantou muito as coisas. A única alteração a ser feito na sua sugestão, é fazer com que eu possa selecionar mais do que um item na listbox.

O que eu preciso também, é cadastrar esses itens, um por um, na planilha. Exemplo

Item 1 (1,1)
item 2 (1,2)

Tem como?

 
Postado : 22/01/2015 11:26 am
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Reinaldo,

Eu quero adaptar esse código no meu projeto. Você pode explicar porque o For x = 5 To 10, inicia-se no 5.

Peço esse apoio, porque na userform que quero adaptá-lo, eu tenho vários combobox's.

 
Postado : 22/01/2015 12:04 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Inicia no 5 para acompanhar nomenclatura de seus Combos, (não sei porque iniciou em combobox5), assim como as labels que contem a descrição vão de 10 a 15.
Para selecionar mais de um item no listbox, altere a propriedade Multiselect de 0 - fmMultiSelectSingle (default) para 1 - fmMultiSelectMulti.
No modelo que enviei já está alterada a propriedade ListStyle para 1 - fmlistStyleOption , alterando tambem a mult, creio que o efeito sera o que deseja.
Não entendi o que deseja cadastrar o que vem a ser item 1 (1,1)?

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/01/2015 12:25 pm
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Reinaldo,

No meu projeto, existem cinco combobox's e e label's que antecedem os combobox a serem preenchidos com A ou D, que são eles:

combobox: 1,2,3,4 e 44.
Label's: 2,3,4,1,6,51,7, 8, 9.

Os combobox e labels que quero inserir o seu código são:

combobox: 5 á 14
libel: 10,11,13, 12,15, 16, 17,14,19 e 20.

Observa que as labels não seguem uma sequencia correta. Isso influencia o erro do corrido?

 
Postado : 23/01/2015 7:40 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Com toda certeza, me basei na proposta com o que apresentou.
As instruções VBA normalmente são adequadas a cada realidade, então quando extraída de uma situação e anexada em outra deve ser readaptada.
Uma solução é renomear as combos e label, para atender/adequar a rotina; ou então poste o modelo/estrutura real de seu projeto.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 23/01/2015 9:29 am
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Reinaldo,

Eu copiei todos os objetos de cada userform do meu projeto. Observa que são três userform's.

Muito obrigado pela a sua ajuda!

 
Postado : 23/01/2015 10:32 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Mas o que espera de cada um dos forms??
O que vai aonde?

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 23/01/2015 1:50 pm
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Reinaldo,

Esses form's são independentes entre si.

Mas observa que cada um deles, na aba Feedback, existe uma libel para pontos fortes e uma aba para pontos fracos.

Sendo assim, eu preciso que o seu código funcione em cada userform.

Uma vez que não consegui adaptá-lo, pelo o seu apoio nesse sentido.

 
Postado : 23/01/2015 2:23 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Segue o seu modelo/Exemplo, com os formulários 1 e 2 alterados e código funcional.
Alterei os nomes dos Labels e ComboBoxes, para compatibiliza-los e poder utilizar em um loop. No Form 2 não havia listbox e inclui.
Veja se consegue adaptar ao formularios 3, lembrando que os nomes do Labels e Combos devem ser alterados manualmente um a um. No form3 também não há listbox

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 24/01/2015 1:11 pm
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Mas o que espera de cada um dos forms??
O que vai aonde?

Reinaldo,

Eu espero que, em cada userform, ao selecionar a Letra A ou D nos combobox, a listbox1 e listbox2, localizadas na aba Feedback, recebam a caption das libel's que ficam ao lado de cada combobox.

Ou seja, é exatamente o que você fez com o exemplo que enviei anteriormente.

Considere que cada userform seja como o exemplo que você fez para mim.

 
Postado : 24/01/2015 1:51 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Lorezon, voçe viu o formulário do post anterior? Creio que não pois ainda não foi baixado nenhuma vez?? Talvez voce não tenha paginado o tópico

Segue o seu modelo/Exemplo, com os formulários 1 e 2 alterados e código funcional.
Alterei os nomes dos Labels e ComboBoxes, para compatibiliza-los e poder utilizar em um loop. No Form 2 não havia listbox e inclui.
Veja se consegue adaptar ao formularios 3, lembrando que os nomes do Labels e Combos devem ser alterados manualmente um a um. No form3 também não há listbox

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 24/01/2015 2:06 pm
Lorenzon
(@lorenzon)
Posts: 355
Reputable Member
Topic starter
 

Segue o seu modelo/Exemplo, com os formulários 1 e 2 alterados e código funcional.
Alterei os nomes dos Labels e ComboBoxes, para compatibiliza-los e poder utilizar em um loop. No Form 2 não havia listbox e inclui.
Veja se consegue adaptar ao formularios 3, lembrando que os nomes do Labels e Combos devem ser alterados manualmente um a um. No form3 também não há listbox

Reinaldo, o meu expediente encerra-se as 17:30. Em casa eu darei uma olhada, mas, como de costume, a sua ajuda será muito útil, bem como a sua postura de ensinar.

Valeu!

 
Postado : 24/01/2015 2:28 pm