Excel-DNA / IntelliSense

Add in-sheet IntelliSense for Excel UDFs
MIT License
169 stars 52 forks source link

IntelliSense is currently open workbooks is not picked up when adding add-in #103

Open govert opened 3 years ago

govert commented 3 years ago

In version 1.4.2 it seems the open workbooks are not scanned when the add-in is opened.

nVenticDW commented 3 years ago

version 1.4.2 had the same problem for me, The new version 1.4.3, has intellisense. Thanks for the fix

nVenticDW commented 3 years ago

with v1.4.3 (and older versions back to version 1.0) I have found that the function is underlined as it is displayed as a tip, as it should be, but clicking on the underline doesn't open the help file with that topic opened. I thought it should open the help topic or at least it used to. Checking old versions of the xll I find they also don't do this and then again I find that the help file and topic number are in the intellisense worksheet. I'm looking to see if I am doing something wrong, or has something changed in the system?

nVenticDW commented 3 years ago

the documentation says column C in the intellisense worksheet can or should be
"Help Topic (either blank, or an http://... link, or a HelpFile and TopicId)"

in column C I have , for instance: Stocksz.chm!2700 without any path information, and the chm file is in the same directory as the xlam. e.g. C:\Users#username#\AppData\Roaming\Microsoft\AddIns

I have now also tried with the path information included in column C so C:\Users#username#\AppData\Roaming\Microsoft\AddIns\ Stocksz.chm!2700 which also didn't work The help file is not displayed. I can't remember when this worked last.

I have found it works on windows10 (not updated for some time), excel32 bit with intellisense from 2.7.18, so version 1.1 32 bit. On this platform the help topic display also works with version 1.4.3 32 bit, and I used the same XLAM.

I hope that helps to identify the issue, (or am I doing something wrong). If you want me to carry out some other test then let me know.

govert commented 3 years ago

You're not doing anything wrong. It looks like recent Office is now blocking the help calls: https://docs.microsoft.com/en-us/answers/questions/308412/is-the-latest-version-of-excel-365-blocking-htmlhe.html

The code in the IntelliSense extension used to work, and still works when called outside Excel. Also it still works for http help topics.

Internally the call is

   Help.ShowHelp(null, fileName, HelpNavigator.TopicId, topicId);

From another application this works fine.

Would you like to open it as a separate issue? Please also press the "File -> Feedback -> Send a frown" button on your Excel.

govert commented 3 years ago

It looks like changing the code to use Application.Help might still work.

nVenticDW commented 3 years ago

I left out that the platform on which it works is Excel 2010 32 bit and the platform in which it doesn't work is Excel 2016 64 bit so not office365. I assume you don't want me to try to change the code. I haven't got a coding environment set up for compiling the source

govert commented 3 years ago

I've made a new issue here https://github.com/Excel-DNA/IntelliSense/issues/106 so that we don't forget.

nVenticDW commented 3 years ago

line 276 and 288 in ToolTipForm.cs. I am too old to learn c# , I do C++, VBA, assembler, and even Fortran77.

govert commented 3 years ago

I only do .NET, and I'm too old to learn how to do all the other kinds of 'code' to make it easy to build and release an update. But I'll try to put in a fix for this when I make the next version.

nVenticDW commented 3 years ago

opening the help topic (the functions are all in XLL and registered) from the function wizard works fine.

I've sent feedback to Microsoft ." File -> Feedback -> Send a frown" parphrased text: forums are saying htmlhelp calls return NULL in office 365 and also I have the same issue in excel 2016 ProPlus

nVenticDW commented 3 years ago

This intellisense tool is really really good. Thanks for it. Keeping up with microsoft changes is not easy, especially if they somehow deprecate functionality simply by mistake, or without realizing the impact.