Fixar tamanho de co...
 
Notifications
Clear all

Fixar tamanho de colunas em listview

5 Posts
2 Usuários
0 Reactions
1,327 Visualizações
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Pessoal estou montando uma listview e me surgiu uma duvida.

Como faço para fixar uma largura para cada coluna da minha listview.
Por exemplo:

A coluna "NOME" deve ter uma largura maior que a coluna idade pois, naturalmente, usa-se mais caracteres nela.

Isso é possível?

Desde já agradeço. Abçr!

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 13/12/2017 3:48 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite

O Mauro já respondeu uma dúvida parecida com a tua no tópico abaixo:

viewtopic.php?f=23&t=2187

[]s

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

 
Postado : 13/12/2017 4:40 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Permitam-me,

Nessa instrução que você utiliza os cabeçalhos são nomeados conforme os dados da planilha e a largura das colunas são determinadas em uma única linha de código

Me.ListView1.ColumnHeaders.Add Text:=rCell.Value, Width:=90

ou seja, terão todas o mesmo tamanho. Existem outras maneiras que você determina individualmente o tamanho das colunas.
No fórum mesmo tem vários exemplos. ;)

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

 
Postado : 13/12/2017 7:11 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Opa, em tempo.

Achei aqui uma instrução desenvolvida pelo Mauro com minha modesta participação que adiciona cabeçalho, largura e dados conforme a planilha.
Delete a sua intrunção na totalidade e insira essa:

Option Explicit

Private Const NomePlanSaida As String = "Plan1"
Private Const LinhaCabecalho As Integer = 1

    Private Sub UserForm_Initialize()
        Call PreencherCabeçalhoLinhas
    End Sub

    Private Sub PreencherCabeçalhoLinhas()
    'Desenvolvida por: Tomás Vásquez
    'Adaptada por: José Arnaldo
    'Implementado por: Mauro Coutinho
'http://www.tomasvasquez.com.br/forum/viewtopic.php?f=17&t=1688
    
        Dim ws As Worksheet
        Dim coluna As Integer
        Dim linha As Integer
        Dim itm As ListItem, n As Long, lngCol As Long
        Dim vardata As Variant
        
        Set ws = ThisWorkbook.Worksheets(NomePlanSaida)
        
            coluna = 1
            linha = LinhaCabecalho
            
            Me.ListView1.ListItems.Clear
            Me.ListView1.ColumnHeaders.Clear
        
        vardata = ws.Range("A1").CurrentRegion.Value
        
        With ws
            While .Cells(linha, coluna).Value <> Empty
                   With ListView1
                     .View = lvwReport
                     .Gridlines = True
                     .ColumnHeaders.Add Text:=ws.Cells(linha, coluna), Width:=ws.Cells(linha, coluna).Width
                   
                   End With
                coluna = coluna + 1
            Wend
            
            'Preenche as Linhas
            With ListView1
                    For n = 2 To UBound(vardata)
                        Set itm = .ListItems.Add(n - 1, , vardata(n, 1))
                            For lngCol = 2 To UBound(vardata, 2)
                        
                                'verifica se é Data e formata a Coluna
                                If IsDate(vardata(n, lngCol)) Then
                                    itm.ListSubItems.Add , , Format(vardata(n, lngCol), "dd/mm/yyyy")
                                Else
                                    itm.ListSubItems.Add , , vardata(n, lngCol)
                                End If
                            
                            Next lngCol
                    Next n
                End With
            
        End With

    End Sub

Penso que resolverá.

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

 
Postado : 13/12/2017 7:29 pm
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
Topic starter
 

Obrigado Pessoal me ajudaram bastante!

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 14/12/2017 9:06 am