B
bad_boyu
I have a tool made in Excel with VBA, that uses a DLL that was made
with VB6. I created a installer program with NSIS, that install the
tool and in the same directory has the dll file. The dll is registered
by the installer. I have problems with the reference to this dll in my
VBA code, because sometimes(From unknown reason... only on some
computers, one computer from 20
) the reference is "Missing"... In
order to resolve this problem I have to uncheck the "missing" reference
and add it back manually. My solutions to this problems are:
1. add the reference from code and remove it when you close the
workbook(but than you have to save the workbook before closing) I tried
to remove the reference when you load the workbook, but if the
reference is missing you get an error.Is there a solution to remove it
from the code if the reference is missing but is checked?
2. use late-binding, but I do not really know how it works. Let's say I
have 2 dll files and I want to point to the first dll, how can I
specify this, because the CreateObject method does not have a "Path"
parameter. From what I saw when you use late-binding first is searching
for a registered dll and than is searching in the current directory. Am
I right?
Are there other solutions to my problem?
Thank you!
with VB6. I created a installer program with NSIS, that install the
tool and in the same directory has the dll file. The dll is registered
by the installer. I have problems with the reference to this dll in my
VBA code, because sometimes(From unknown reason... only on some
computers, one computer from 20
order to resolve this problem I have to uncheck the "missing" reference
and add it back manually. My solutions to this problems are:
1. add the reference from code and remove it when you close the
workbook(but than you have to save the workbook before closing) I tried
to remove the reference when you load the workbook, but if the
reference is missing you get an error.Is there a solution to remove it
from the code if the reference is missing but is checked?
2. use late-binding, but I do not really know how it works. Let's say I
have 2 dll files and I want to point to the first dll, how can I
specify this, because the CreateObject method does not have a "Path"
parameter. From what I saw when you use late-binding first is searching
for a registered dll and than is searching in the current directory. Am
I right?
Are there other solutions to my problem?
Thank you!