Ir ao conteúdo
  • Cadastre-se

Excel vba ListView


Posts recomendados

Ola,

 

Tenho uma planilha no excel, onde uso ListView.

 

Para criar a planilha eu tive que adicionar la no "controles adicionais"

 

controles adicionais -> Microsoft ListView Control 6.0 (SP6)

 

Até ai não tenho problema nenhum, porém quando eu tento abrir essa planilha em outros PCs eu tenho q fazer esse procedimento de novo. E acabo perdendo os ListView que já estavam feitos.

 

Segue minha pergunta:

Tem algum cód no vba para, ao iniciar a planilha ele já verifique e faça isso sozinho?

Ou seja um cód que quando eu abrir a planilha eu não precise ir la na caixa de ferramentas e controle adicionais e fazer todo esse procedimento?

 

 

Agradeço desde já a atenção

Obrigado

 

Link para o comentário
Compartilhar em outros sites

É meio complicado prever nas diversas versões do win e office, principalmente com o win64b o diretório e versao do componente em questao.e fazer isso automaticamente e ober o resultado 100 por cento.

Tente adaptar o cod inserindo os IFs  ou case, condicionando as versões do office.

Segue um exemplo

Habilite a ref. manualmente (vide cod) e desabilite o modo protegido.

Option ExplicitSub Adicionar_ReferenciaTomaticamente()'  habilite a ref. "Microsoft VBScript Regular Expressions 5.5"    Dim VBAEditor As VBIDE.VBE    Dim vbProj As VBIDE.VBProject    Dim chkRef As VBIDE.Reference    Dim refexiste As Boolean    Set VBAEditor = Application.VBE    Set vbProj = ActiveWorkbook.VBProject       For Each chkRef In vbProj.References              If chkRef.Name = "MSComctlLib" Then         '  vbProj.References.Remove chkRef ' aqui voce pode habilitar p/remover se ja tiver marcado         '  vbProj.References.AddFromFile "C:\WINDOWS\system32\MSCOMCTL.ocx" 'aqui pode inserir if p/ setar as opcoes de local da ocx            refexiste = True            GoTo px        End If    Next      vbProj.References.AddFromFile "C:\WINDOWS\system32\MSCOMCTL.ocx"px:    If refexiste = True Then        MsgBox "Referência já existe"    Else        MsgBox "Referência adicionada com sucesso"    End If    Set vbProj = Nothing    Set VBAEditor = NothingEnd Sub

E em EstaPasta_de_Trabalho, no evento open:

Private Sub Workbook_Open()Run "Adicionar_ReferenciaTomaticamente"End Sub 

abx.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...