implementing help for UDF

S

shailendrap

Hi,

I am writing an add-in for MS Excel. Upon installation the Add-in adds
excel cell formulas (User Defined Functions) in a category. It also
adds menu items to the Excel. Here are the technical details of the
development:
-- Using Shared Add-in (under Extensibility) project under VS .net
2005. Select only "Microsoft Excel" in the "Select an Application
Host" step of the Add-in wizard.
-- Language - C#

The project creates the file Connect.cs with GuidAttribute. Looks like
this:
[GuidAttribute("E79BD972-0295-420E-8E42-038685177BDF"),
ProgId("MyAddin1.Connect")]

public class Connect : Object, Extensibility.IDTExtensibility2


To add additional User Defined Functions (UDF), I add public functions
in the above connect class like this:

public string ExecuteQuery(System.String strQuery, [Optional] object
optionalServerIp, [Optional] object optionalPort, [Optional] object
optionalPollInterval)

{

//start processing here asynchronously

return "Executing...";

}

In order to add this function as excel cell function I create an entry
in the registry like this:

HKEY_CLASSES_ROOT\CLSID\{E79BD972-0295-420E-8E42-038685177BDF}
\Programmable

where Programmable is the key that is created (no value).

After installation (which can be done just by building on the
developer machine or by creating a setup project using vs), the cell
function can be called using the function wizard as follows:

Open the Insert Function wizard by clicking on the fx button in the
function bar.

Select the newly added category "MyAddin1.Connect" and select the
function "ExecuteQuery" under it. This will open up a Function
Arguments dialog like this -







What I want to do (and not able to figure out) is -

-- Replace the text "No help available" with my function description
on ExecuteQuery.

-- Display the parameter help. "StrQuery" in the lower half should be
displayed as "StrQuery is the text string which represents a query"

-- Help on this function should be linked to some file (ex. .chm
file).



Please let me know if there is some way to achieve the above. Its a
little urgent for me and I am stuck on this.

Pls let me know if you need any other details to assist you.



Thanks,

Shailendra
 
S

shailendrap

Hi
Thanks!!
But I am using C#.net. My user defined functions are in C#.Net dll.

Shailendra

Tis is how you do it in VBA:http://www.jkp-ads.com/Articles/RegisterUDF00.htm

NickHK




I am writing an add-in for MS Excel. Upon installation the Add-in adds
excel cell formulas (User Defined Functions) in a category. It also
adds menu items to the Excel. Here are the technical details of the
development:
-- Using Shared Add-in (under Extensibility) project under VS .net
2005. Select only "Microsoft Excel" in the "Select an Application
Host" step of the Add-in wizard.
-- Language - C#
The project creates the file Connect.cs with GuidAttribute. Looks like
this:
[GuidAttribute("E79BD972-0295-420E-8E42-038685177BDF"),
ProgId("MyAddin1.Connect")]
public class Connect : Object, Extensibility.IDTExtensibility2
To add additional User Defined Functions (UDF), I add public functions
in the above connect class like this:
public string ExecuteQuery(System.String strQuery, [Optional] object
optionalServerIp, [Optional] object optionalPort, [Optional] object
optionalPollInterval)

//start processing here asynchronously
return "Executing...";

In order to add this function as excel cell function I create an entry
in the registry like this:

where Programmable is the key that is created (no value).
After installation (which can be done just by building on the
developer machine or by creating a setup project using vs), the cell
function can be called using the function wizard as follows:
Open the Insert Function wizard by clicking on the fx button in the
function bar.
Select the newly added category "MyAddin1.Connect" and select the
function "ExecuteQuery" under it. This will open up a Function
Arguments dialog like this -
What I want to do (and not able to figure out) is -
-- Replace the text "No help available" with my function description
on ExecuteQuery.
-- Display the parameter help. "StrQuery" in the lower half should be
displayed as "StrQuery is the text string which represents a query"
-- Help on this function should be linked to some file (ex. .chm
file).
Please let me know if there is some way to achieve the above. Its a
little urgent for me and I am stuck on this.
Pls let me know if you need any other details to assist you.

Shailendra- Hide quoted text -

- Show quoted text -
 
N

NickHK

Yes, the code apparently works from an addin also.
Of course, you have to translate to your language, but it is possible.

NickHK

Hi
Thanks!!
But I am using C#.net. My user defined functions are in C#.Net dll.

Shailendra

Tis is how you do it in VBA:http://www.jkp-ads.com/Articles/RegisterUDF00.htm

NickHK




I am writing an add-in for MS Excel. Upon installation the Add-in adds
excel cell formulas (User Defined Functions) in a category. It also
adds menu items to the Excel. Here are the technical details of the
development:
-- Using Shared Add-in (under Extensibility) project under VS .net
2005. Select only "Microsoft Excel" in the "Select an Application
Host" step of the Add-in wizard.
-- Language - C#
The project creates the file Connect.cs with GuidAttribute. Looks like
this:
[GuidAttribute("E79BD972-0295-420E-8E42-038685177BDF"),
ProgId("MyAddin1.Connect")]
public class Connect : Object, Extensibility.IDTExtensibility2
To add additional User Defined Functions (UDF), I add public functions
in the above connect class like this:
public string ExecuteQuery(System.String strQuery, [Optional] object
optionalServerIp, [Optional] object optionalPort, [Optional] object
optionalPollInterval)

//start processing here asynchronously
return "Executing...";

In order to add this function as excel cell function I create an entry
in the registry like this:

where Programmable is the key that is created (no value).
After installation (which can be done just by building on the
developer machine or by creating a setup project using vs), the cell
function can be called using the function wizard as follows:
Open the Insert Function wizard by clicking on the fx button in the
function bar.
Select the newly added category "MyAddin1.Connect" and select the
function "ExecuteQuery" under it. This will open up a Function
Arguments dialog like this -
What I want to do (and not able to figure out) is -
-- Replace the text "No help available" with my function description
on ExecuteQuery.
-- Display the parameter help. "StrQuery" in the lower half should be
displayed as "StrQuery is the text string which represents a query"
-- Help on this function should be linked to some file (ex. .chm
file).
Please let me know if there is some way to achieve the above. Its a
little urgent for me and I am stuck on this.
Pls let me know if you need any other details to assist you.

Shailendra- Hide quoted text -

- Show quoted text -
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top