Como Preencher Listview no Excel VBA 2016. No Excel e possível criar inúmeras soluções que podem facilitar o nosso dia a dia no trabalho na execução de tarefas. Possuímos uma gama de opções para criar relatórios em formulário, planilhas eletrônicas entre outras ferramentas que e possível desenvolver usando o Excel.
Para desenvolver formulários no VBA, talvez o listview seja a maneira mais adequada de apresentar dados em forma de tabela, pois o listview permite uma aparência mais amigável, assemelhando-se a visualização da planilha, diferentemente de um listbox. Vamos demostrar um exemplo simples mais que a parti dele você pode ampliar seu projeto para mais abrangente afinal o código será o mesmo apenas vai precisar acrescentar mais algumas linhas de códigos com as novas opções. Veja um exemplo de visualização de um listview num userform:
Veja como ficou o nosso exemplo da listview
Como preencher listview no Excel VBA 2016 – Controle Listview
Procure em nosso site como habilita a guia Desenvolvedor caso não esteja habilitado no seu Excel.
O controle Listview não vem habilitado por padrão, por isso é preciso habilitá-lo, clicando com o botão direito do mouse na caixa de ferramentas e selecionando “Controles adicionais…” e então selecionar o controle “Microsoft Listview Control, Version 6.0”:
veja no passo a passo como você faz para habilitar o controle listview.
Apos clicar com o botão direito em “Controles Adicionais” lhe aparecerá essa janela com todos os controles disponíveis basta rolar para baixo até encontrar essa opção que esta selecionada e marcar a caixinha quadrada e clicar em Ok e pronto já vai esta habilitado o nosso controle.
É importante também que a referência Microsoft Windows Common Controls esteja ativa para que o Listview funcione adequadamente. Veja a imagem:
Vamos começar, dê duplo clique sobre o userform para abrir a tela do módulo dele para iniciar a edição do código. Vou adotar um código no evento Initialize do Userform (ou dependendo da aplicação também poderia ser no evento Activate) para que ao carregar o userform o Listview já venha populado. Para facilitar o desenvolvimento, vou deixar separado o procedimento de carregar o listview (vou chamar de “PreencherListView”), para que ele seja chamado num comando dentro do evento Initialize do Userform.
Cole esse Código dentro do evento do formulário
Para usar um elemento da Listview, você pode, por exemplo, usar o evento Click do Listview e a propriedade SelectedItem. Essa propriedade trará o valor da primeira coluna da linha clicada do listview. Se quiser usar um valor das outras colunas é preciso adicionar a propriedade SubItems com o índice desejado iniciando a partir de 1. Veja um exemplo de código para trazer uma msgbox para cada item da linha:
Como preencher listview no Excel VBA 2016
Private Sub ListView1_Click()
MsgBox “NOME: ” & ListView1.SelectedItem
MsgBox “IDADE: ” & ListView1.SelectedItem.SubItems(1)
MsgBox “SEXO: ” & ListView1.SelectedItem.SubItems(2)
End Sub
Procedimento listview – Como preencher listview no Excel VBA 2016
Private Sub UserForm_Initialize()
‘Ajustes de algumas propriedades importantes do ListView
With Me.ListView1
.Gridlines = True ‘linhas de grade visíveis (true)
.HideColumnHeaders = False ‘False para cabeçalho visível e True para invisível
.View = lvwReport ‘Ajustar visualização do listview
End With
‘se quiser detalhes da propriedade .view consulte: https://msdn.microsoft.com/en-us/library/aa733652(v=vs.60).aspx)
‘Chamar o procedimento para popular o Listview1
Call PreencherListView
End Sub
código para preencher a listview
Private Sub PreencherListView()
‘Declaração de variáveis
Dim wksOrigem As Worksheet
Dim rData As Range
Dim rCell As Range
Dim LstItem As ListItem
Dim linCont As Long
Dim colCont As Long
Dim i As Long
Dim j As Long
‘Definição da planilha de origem
Set wksOrigem = Worksheets(“Planilha1”)
‘Definição do range de origem
Set rData = wksOrigem.Range(“A1”).CurrentRegion
‘Adicionar cabeçalho no listview com laço de repetição ‘For’
For Each rCell In rData.Rows(1).Cells
ListView1.ColumnHeaders.Add Text:=rCell.Value, Width:=90
Next rCell
‘Alimentar variável linCont com número de linhas do intervalo fonte
linCont = rData.Rows.Count
‘Alimentar variável colCont com número de linhas do intervalo fonte
colCont = rData.Columns.Count
‘Preenche o ListView
For i = 2 To linCont
Set LstItem = ListView1.ListItems.Add(Text:=rData(i, 1).Value)
For j = 2 To colCont
LstItem.ListSubItems.Add Text:=rData(i, j).Value
Next j
Next i
End Sub
como ficou o nosso exemplo
Veja mais…
Planilhas para a gestão do seu negócio em Excel
Gerar orçamento em Excel e salvar em PDF
Planilha simulador de parcelamento em Excel
Como controlar recebimentos em cartões de crédito
A Importância do Fluxo de Caixa nas Empresas
Sistema Controle de Contas a Pagar e Receber
Planilha agenda de contato corporativo em Excel
Planilha para Controlar de Dízimos e Ofertas em Excel
Planilhas em Excel para Abertura de Empresa
Como Usar a função PROCV (VLOOKUP) do Excel
Macro para salvar cadastro de clientes Excel VBA
Como calcular o lucro em porcentagem no Excel
Copiar dados entre planilhas do Excel usando uma macro
Hoje mostramos Como preencher listview no Excel VBA 2016
Deixa suas duvidas nos comentários ou entre em contato por e-mail