Ir ao conteúdo
  • Cadastre-se

VBA para excel - É possível manter uma lista de dados dentro de um addin?


Posts recomendados

Prezados bom dia.

 

Eu fiz um Addin para Excel contendo uma fórmula para contar o número de dias úteis entre duas datas:

 

 

Function OCC_DUT(Data_inicial As Long, Data_final As Long)

 
 
Set Lista_Feriados = Workbooks("FERIADOS ATE 2071.xlsx").Sheets("Plan1").Range("Feriados")
 
 
If Data_inicial <= Data_final Then
 
OCC_DUT = Application.WorksheetFunction.NetworkDays(Data_inicial, Data_final, Lista_Feriados) - Application.WorksheetFunction.NetworkDays(Data_final, Data_final, Lista_Feriados)
 
Else
 
OCC_DUT = Application.WorksheetFunction.NetworkDays(Data_inicial, Data_final, Lista_Feriados) + Application.WorksheetFunction.NetworkDays(Data_inicial, Data_inicial, Lista_Feriados)
 
End If
 
End Function

 

A fórmula funciona perfeita e adequadamente, mas ela tem um porém: ela exige que a planilha FERIADOS ATE 2071 esteja aberta. Se o usuário não estiver com essa planilha aberta, a fórmula não vai funcionar.

 

A planiha de feriados contém uma lista de datas (em torno de 850) dispostos em uma única coluna (algo como A2:A850). Como eu poderia fazer para que essa fórmula funcione sem que eu precise abrir a planilha dos feriados? Tem como salvar os dados da planiha de fórmulas dentro de uma sheet do addin? Ou tem outro jeito simples para fazer?

 

Obrigado.

 

Link para o comentário
Compartilhar em outros sites

doob para este caso, acredito que tenha 2 opções.

 

No (anexo), tem e um exemplo c/ [ Pasta_de_trabalho1 ] e [ Pasta_de_trabalho2 ], na Pasta2 tem a macro que abre a Pasta1 (c/ a função), executa a função.

 

A outra oção (que eu acho mais simples) seria inserir a função em um modulo da planilha do usuario e buscar as informações que a função precisa na Pasta de trabalho (fechada):  [ Workbooks("FERIADOS ATE 2071.xlsx").Sheets("Plan1").Range("Feriados") ] 

AppRunExampleFiles.zip

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...