Notifications
Clear all

Ordenar Uma ListView Por Nome

7 Posts
2 Usuários
0 Reactions
1,963 Visualizações
 crcj
(@crcj)
Posts: 0
New Member
Topic starter
 

Bom dia a todos.
Estou precisando ordenar uma ListView por nome quando abro o formulário frmFornecedor. Pesquisei aqui no Forum, mas todos que achei, tem que clicar no cabeçalho para ele ordenar e não é isso que quero, e sim quando abre o formulário. Segue anexo a planilha, para abrir o sistema:
Usuário: wmendes
Senha: 872487

Agradeço a quem puder me ajudar

 
Postado : 13/03/2017 7:59 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!
talvez te ajude...

Consegue adaptar o código abaixo?

Private Sub ListView1_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
     
    With ListView1
        .SortKey = ColumnHeader.Index - 1
        If .SortOrder = lvwAscending Then
            .SortOrder = lvwDescending
        Else
            .SortOrder = lvwAscending
        End If
        .Sorted = True
    End With
End Sub

Att

 
Postado : 13/03/2017 8:10 am
 crcj
(@crcj)
Posts: 0
New Member
Topic starter
 

Alexandrevba, bom dia.
Obrigado pela sua resposta, mas não é isso que estou precisando ( clicar na coluna ), e sim quando abro o formulário frmFornecedor, já tentei colocar esse código sem o private, mas não funcionou.

 
Postado : 13/03/2017 8:22 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Não testado!!

With ListView1
         
        .Gridlines = True
        '.View = lvwReport
        .FullRowSelect = True
        .ColumnHeaders.Add Text:="ID", Width:=20      'ID= Nome da 1ª coluna
        .ColumnHeaders.Add Text:="EMPRESA", Width:=295, Alignment:=0    'País= Nome da 2ª coluna
        .ColumnHeaders.Add Text:="CNPJ", Width:=110, Alignment:=2    'UF= Nome da 3ª coluna
        '.ColumnHeaders.Add Text:="CNPJ", Width:=90, Alignment:=2    'UF= Nome da 4ª coluna
        '.ColumnHeaders.Add Text:="NOTA Nº", Width:=50, Alignment:=1    'UF= Nome da 5ª coluna
        '.ColumnHeaders.Add Text:="VALOR", Width:=80, Alignment:=1    'UF= Nome da 6ª coluna
        ' #### AleVBA ######
        '.SortKey = 2
        '.SortOrder = lvwDescending
        '.Sorted = True
    End With

Att

 
Postado : 13/03/2017 9:48 am
 crcj
(@crcj)
Posts: 0
New Member
Topic starter
 

Alexandre, bom dia.
Esta dando erro, segue anexo.

 
Postado : 14/03/2017 5:41 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Bom dia!!

Cara eu não sei se vou conseguir te ajudar... :(

talvez seu Sistema Operacional + (arquitetura) e MS Office + (arquitetura) + o controle ListViwer seja diferente do meu.

vamos ver se mais alguém pode te ajudar, desculpa.

Att

 
Postado : 14/03/2017 7:33 am
 crcj
(@crcj)
Posts: 0
New Member
Topic starter
 

Ok, mesmo assim obrigado.

 
Postado : 14/03/2017 10:02 am