CLASSIFICAR OS ITENS DO COMBO

CLONELG 23/11/2011 08:57:05
#389802
Bom dia pessoal, estou retornando as atividades do vb novamente e tenho uma duvida. Desde já agradeço a ajuda.
Como faço para classificar os itens dentro do combo da seguinte forma:
Ele é preenchido por datas nesse formato: [Ô]10/01/2010, 20/01/2010...[Ô] Quero classificar as datas por mes, ou seja, na data mostrada, seria os dois digitos que aparecem entre dia e ano. Desde já fico grato.
PHOENIX209E 23/11/2011 09:04:41
#389803
como é alimentado esta combo? atravez de um dataset?
CLONELG 23/11/2011 09:10:40
#389804
Estou usando VB + DAO.
Da seguinte forma: ao receber o foco, ele busca na tabela [escola] o campo (semana) que foi cadastrado anteriormente e adiciona todas as semanas cadastradas na tabela [escola] neste combo. Isso em tempo de execução.

Explicação do sistema: tenho duas tabelas: ESCOLA e PROGRAMAÇÃO.
Cadastro na escola as datas e em seguida vou para a tabela programação.
Neste momento, ao fazer o cadastro em PROGRAMAÇÃO, o combo, através de loop, adiciona as semanas (Ex: 10/10/2010, 20/10/2010, 30/10/2010) dentro do combo e então eu apenas seleciono uma delas para finalizar o cadastro de PROGRAMAÇÃO.
KERPLUNK 23/11/2011 09:11:53
#389806
Resposta escolhida
Se essas datas vierem de uma tabela, ordene já na tabela, senão, pode criar uma em memória e organizar:

Dim x As New ADODB.Recordset
x.Fields.Append [Ô]Data[Ô], adDate
x.Open

x.AddNew [Ô]Data[Ô], [Ô]01/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]05/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]04/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]03/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]09/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]02/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]07/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]08/01/2011[Ô]
x.AddNew [Ô]Data[Ô], [Ô]06/01/2011[Ô]

x.Sort = [Ô]Data[Ô]

Do While Not x.EOF
Combo1.AddItem x!Data
x.MoveNext
Loop
CLONELG 23/11/2011 09:32:47
#389811
Entendi mais ou menos, mas vou explicar de novo.

Tenho as seguinte das cadastradas:
10/10/2010
17/10/2010
24/10/2010

Agora vou cadastrar mais tres:
01/11/2010
07/11/2010
14/11/2010

Ao fazer esse processo, na tabela, os registros ficam classificados da seguinte forma:
01/11/2010
07/11/2010
10/10/2010
14/11/2010
17/10/2010
24/10/2010.

Gostaria que fossem classificados de acordo com o mes. Assim, deveriam ficar na seguinte ordem:
10/10/2010
17/10/2010
24/10/2010
01/11/2010
07/11/2010
14/11/2010

Neste caso, como faço então para classificar na tabela (usando acces 2007) ou como faço para aparecer nesta ordem no combo?

Muito obrigado.
CLONELG 23/11/2011 10:15:28
#389817
Continuo no mesmo. NEste caso, não estou usando o SQL porque estou em fase de aprendizagem ainda. Tenho interesse sim. Obrigado.
KERPLUNK 23/11/2011 10:21:34
#389818
Amigo o exemplo que te passei vai servir perfeitamente pra o que vc quer.
CLONELG 23/11/2011 10:38:50
#389824
Mas estou usando DAO ao inves de ADOO. Tem alguma alteração ou vale o exemplo acima?
KERPLUNK 23/11/2011 11:37:13
#389832
Simplesmente adicione a referência do ADO no seu projeto e use o código que te passei, sem mistérios
CLONELG 23/11/2011 13:05:19
#389841
Usuário KERPLUNK, muito obrigado por sua colaboração.
Tópico encerrado , respostas não são mais permitidas