ComboBox onde se se...
 
Notifications
Clear all

ComboBox onde se selecionado o mês...

16 Posts
1 Usuários
0 Reactions
3,114 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Quero fazer uma ComboBox onde ao selecionar os meses, na outra combobox, só aparecer os números de dias que tem no mês. Exemplo, se eu escolher na 1ª combobox fevereiro, na outra combobox, aparecerá 28 dias.
Se selecionado maio, automaticamente aparecerá 31 dias.

Alguém sabe como fazer?

 
Postado : 21/06/2011 7:03 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Uma forma simples de fazer:

 
Postado : 21/06/2011 9:15 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá sparcools!

Da uma olhada ai.
Com certeza tem um jeito mais facil.

Mas até aparecer a resposta vai quebrando o galho ai.

T+

 
Postado : 21/06/2011 9:18 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Acho que boiei

 
Postado : 21/06/2011 9:22 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Ao ler a resposta do Paulo fiquei na duvida com vc queria que o combobox2 retornasse...

Vc quer o numero de dias ou os dias para seleção?

 
Postado : 21/06/2011 12:04 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Obrigado a todos.

Mas quero que liste os dias, não o número de dias de cada mês.

abs

 
Postado : 21/06/2011 12:52 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

O exemplo que postei serviu?

Como disse dever ter um jeito mais facil.

Olha ai e da o retorno BLZ?

T+

 
Postado : 21/06/2011 1:07 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

É isso mesmo.

Tem como dar uma explicada no que você fez +/-?

Só falar como funciona o código, etc? kkkk

vlwwwwwwwwwwwwww

E quem tiver o jeito mais fácil, por favor, postar!

 
Postado : 21/06/2011 1:56 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Não sei se é o mais fácil, mas com algumas adaptações com base nas fontes abaixo :

FONTES
Converting month name to number
http://www.codeforexcelandoutlook.com/b ... to-number/

Preencher Combo Datas
http://www.linhadecodigo.com.br/Dica.aspx?id=753

Chegamos a este outro exemplo.

abraços

 
Postado : 21/06/2011 8:11 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá sparcools!

Como te disse essa não é a maneira mais facil pois usa muitos codigos repetidos, fica facil errar.

Bom tenho percebido que embora o conceito seja universal, programação é um pouco de estilo.
Cada um tem um jeito e com o tempo é até possivel reconhecer o codigo que um progrmador usa.

Quando carrego combobox encadeado cujos valores são conhecidos gosto de carregar o primeiro com a inicialização do formulario.
Limpo eles e adiciono os item do combobox1

Private Sub UserForm_Initialize()
ComboBox1.Clear
ComboBox2.Clear
With ComboBox1
.AddItem "Janeiro"
.AddItem "Fevereiro"
.AddItem "Março"
.AddItem "Abril"
.AddItem "Maio"
.AddItem "Junho"
.AddItem "Julho"
.AddItem "Agosto"
.AddItem "Setembro"
.AddItem "Outubro"
.AddItem "Novembro"
.AddItem "Dezembro"
.ListIndex = -1
End With
End Sub

Quando carrega o primeiro combobox
Uso o ListIndex para determinar os item do combobox2 de acordo com o primeiro carregado

+/- isso

Da uma estudada nos codigos e o que não estender vamos conversando.

BLZ?

T+

 
Postado : 22/06/2011 5:25 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Acho que tem um jeito mais fácil.

Tipo, ao invés de botar de um em 1 em add.item, só botar a lista em uma coluna e atribuir ao ComboBox1.

 
Postado : 22/06/2011 7:43 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Cadê a opção de editar o post?

Estou tentando fazer algo assim, de N1 até N31 tenho os dias, e, caso o valor da primeira combobox for janeiro, a rowsource da combobox2 for de N1:n31.

Alguém sabe como ajeitar isso?

Private Sub ComboBox2_Change()
If ComboBox1.Value = "janeiro" Then
ComboBox2.RowSource ("N1:N31")
If ComboBox1 = "fevereiro" Then
ComboBox2.RowSource = "n1:n28"

 
Postado : 22/06/2011 8:19 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Na minha opinião, o exemplo que passei é bem simples, pois preenchemos o Combo com todos os Meses com uma unica linha de instruçao, e com o auxilo das outras rotinas associada a função que adaptei, preenche todos os dias do mes selecionado.
O diferencial nesta função é que a mesma reconhece o Ano, então em Ano Bissesto o mesmo é calculado.
Pode-se fazer da maneira que citou, ter todos os dados em uma Aba, e carrrega-los nos Combos, mas com isso estáriamos inflando o nosso arquivo deixando-o maior, e como dependeriámos da mesma forma ter rotinas para puxar os dados da aba e carrega-los nos combo, estariamos tendo dois trabalhos, fazendo varias instruções para preencher dependentes com Rowsource para uma questão simples, a não ser que necessitasemos de outras infrmações.

Esta é a minha opinião, mas cada um sabe o que lhe convem, e quanto ao RowSource, no exemplo que o Edson lhe passou no Tópico abaixo, faz exatamente o que quer, é só dar uma olhada nas formulas e na rotina e adapta-la.

preencher combobox
viewtopic.php?f=23&t=2006

abraços

 
Postado : 22/06/2011 9:05 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Tem como disponibilizar sem ser em rar?

abs

 
Postado : 22/06/2011 10:16 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Tem como disponibilizar sem ser em rar?
abs

Segue o arquivo.

abraços

 
Postado : 22/06/2011 10:41 am
Página 1 / 2