ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   How are excel function names in dlls/xlas resolved ? (https://www.excelbanter.com/excel-programming/359022-how-excel-function-names-dlls-xlas-resolved.html)

Aidan Lawless

How are excel function names in dlls/xlas resolved ?
 
Hi,

I am looking to know how custom function names are resolved in Excel.I have
an XLA with a number of functions in it and have used it to build a large
spreadsheet.
Once the functions were settled I built an add-in DLL in delphi to replace
the XLA
for easier deployment. The new DLL works fine when building new workbooks
but existing ones which were designed with the XLA dont work even though
the function names in the new dll are identical. I guessed that excel was
storing the
path to the xla in the sheet somewhere but even if i edit the cells or call
the
DLL's functions from new cells they fail with #NAME as if they are still
trying to
find the function name in the old XLA...

This has been very frustrating so any help would save a few grey hairs...

Thanks

Aidan

Chip Pearson

How are excel function names in dlls/xlas resolved ?
 
You can't call functions in the DLL directly from worksheet
cells, unless the DLL was written as an XLL or COM Add-In.
Instead, you need "dummy" XLA functions that get called from the
cell and then in turn call the function in
the DLL.


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com


"Aidan Lawless" <Aidan wrote
in message
...
Hi,

I am looking to know how custom function names are resolved in
Excel.I have
an XLA with a number of functions in it and have used it to
build a large
spreadsheet.
Once the functions were settled I built an add-in DLL in delphi
to replace
the XLA
for easier deployment. The new DLL works fine when building new
workbooks
but existing ones which were designed with the XLA dont work
even though
the function names in the new dll are identical. I guessed that
excel was
storing the
path to the xla in the sheet somewhere but even if i edit the
cells or call
the
DLL's functions from new cells they fail with #NAME as if they
are still
trying to
find the function name in the old XLA...

This has been very frustrating so any help would save a few
grey hairs...

Thanks

Aidan




Aidan Lawless[_2_]

How are excel function names in dlls/xlas resolved ?
 
Hi Chip,

Originally it was a DLL/XLA pair as you suggested however I am looking to
replace this with a COM add-in which exports the same function names. The
problem is workbooks built with the old XLA/DLL pair dont recognise the new
Add-In's functions even though they have the same names. A brand new workbook
will recognise the functions without any problem.

Even if I try one of my functions in a new blank cell, it wont resolve it,
it appears
to be still looking for the old XLA file. Is excel keeping a workbook wide
list of
functions used and their locations ? I'm trying to avoid having to redesign
all
our customers sheets when I ship the new DLL...

Aidan




"Chip Pearson" wrote:

You can't call functions in the DLL directly from worksheet
cells, unless the DLL was written as an XLL or COM Add-In.
Instead, you need "dummy" XLA functions that get called from the
cell and then in turn call the function in
the DLL.


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com


"Aidan Lawless" <Aidan wrote
in message
...
Hi,

I am looking to know how custom function names are resolved in
Excel.I have
an XLA with a number of functions in it and have used it to
build a large
spreadsheet.
Once the functions were settled I built an add-in DLL in delphi
to replace
the XLA
for easier deployment. The new DLL works fine when building new
workbooks
but existing ones which were designed with the XLA dont work
even though
the function names in the new dll are identical. I guessed that
excel was
storing the
path to the xla in the sheet somewhere but even if i edit the
cells or call
the
DLL's functions from new cells they fail with #NAME as if they
are still
trying to
find the function name in the old XLA...

This has been very frustrating so any help would save a few
grey hairs...

Thanks

Aidan






All times are GMT +1. The time now is 11:57 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com