Alvaro, este erro de Modulo Oculto, pode ser devido o projeto VBA estar protegido como você citou, agora quanto ao ListView estar sumindo, isto se deve a Bibliotecas incompatíveis, ou versões não atualizadas, se pesquisar no Forum sobre ListView e Bibliotecas / Referencias encontrara alguns tópicos sobre este problema e solucionados, a maioria bastou atualizar a Biblioteca.
Abaixo a rotina para criar o Controle ListView conforme pretende, associe a um Botão em seu Form, agora, se o problema for de versão de biblioteca ou ausente, não sei se o controle será criado ou se conseguira adicionar itens, então veja se ocorre como pretende, de uma olhada no tópico abaixo referente a controle em tempo de execução
inserir controle em tempo de execução - viewtopic.php?f=10&t=2858
Private Sub CommandButton1_Click()
Dim lvw As ListView
Dim ctl As Control
Dim li As ListItem
'Adiciona o Listview com o nome ListView1
Set ctl = Controls.Add("MSComctlLib.ListViewCtrl.2", "ListView1")
'Formata o ListView
With ctl
.Left = 12
.Top = 144
.Width = 648
.Height = 354
.Font.Name = "Calibri"
.Font.Size = 9
.FullRowSelect = True
.Gridlines = True
.Visible = True
End With
'Define o Cabeçalho
Set lvw = ctl
With lvw
.ColumnHeaders.Add 1, "a", "Header1", 100
.ColumnHeaders.Add 2, "b", "Header2", 100
.ColumnHeaders.Add 3, "c", "Header3", 100
.Gridlines = True
.View = lvwReport
End With
'Preenche o Listview
Set li = lvw.ListItems.Add(, , "Item 1")
li.SubItems(1) = "Item 1 Col 2)"
li.SubItems(2) = "Item 2 Col 3)"
Set li = lvw.ListItems.Add(, , "Item 2")
li.SubItems(1) = "Item 1 Col 2)"
li.SubItems(2) = "Item 2 Col 3)"
End Sub
Outro link que vale a pena olhar :
Create User Form Using VBA - http://www.tek-tips.com/faqs.cfm?fid=5757
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 08/07/2014 5:53 am