acessar DLL dinamicamente

Tem alguma dica para o uso do Excel? Algum atalho especial? Algum macete? Aqui é o lugar para você compartilhar!

acessar DLL dinamicamente

Mensagempor edcronos2 » Sex Jul 13, 2018 5:34 am

para acessar DLL dinamicamente em vez declarar o caminho completo
Código: Selecionar todos
'D:\worksheets\Statistics_1.0.dll
Public Declare Sub Function_Name Lib "D:\worksheets\Statistics_1.0.dll" (ByRef Table  As Long)

se coloca somente o nome
Código: Selecionar todos
Statistics_1.0.dll
Private Declare Function Function_Name Lib "Statistics_1.0.dll" (ByRef Table As Long) as Long


e quando for chamar a função se troca o diretoria e drive padrão do excel
Código: Selecionar todos
Sub DLLCALL()

     Dim CurrentPath As String
     CurrentPath = CurDir()

     ChDir            ThisWorkbook.Path    ' <<<--- troca a pasta de trabalho 
     ChDrive Left( ThisWorkbook.Path , 1)' <<<---pega a letra do drive onde está a pasta de trabalho

Call Statistics(Sort(1, 1)) '   <<< ---   calls the DLL function

'volta ao padrão "creio que não tem necessidade porque com o end sub  volta ao normal"
     ChDir CurrentPath
     ChDrive Left(CurrentPath, 1)

end sub


estou passando minhas macros para outra linguagem e DLL , e usando o excel apenas como interface
é gritante a diferença na performance , tambem pode dar maior proteção no conteúdo criado
edcronos2
Membro
Membro
 
Mensagens: 473
Registrado em: Seg Nov 30, 2015 6:59 pm
Has thanked: 30 times
Have thanks: 98 times

{ SO_SELECT }

Voltar para Dicas & Macetes

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante