Error value when invoking functions in Excel 2013 x64


I have issues when invoking the "getJson" or the "azurePredict" function in Excel. I'm able to load the assembly just as in the instructions and the Excel Add-in is active. Runned Excel as administrator however still not able to invoke my Webservice. Are the any special conditions, firewall ports or any similar conditions that I need to take into account ? Or is there any way to debug way the error ?



fgutierrez wrote Oct 7, 2014 at 8:55 PM

So I've downloaded the source code and created an executable in order to invoke the getJson function, it turns out that when running VS as an administrator I get a proper and correct response. Plus I've also looked into my registry and I can see that the assembly is registered and pointing to the correct .dll location.

I'm running out of ideas. Anything else I could try to get this assemble up and calling ??



neerajkh wrote Oct 8, 2014 at 8:57 PM

Can you try executing the following on command prompt with administrator rights:

c:\Windows\Microsoft.NET\Framework64\v4.0.30319>regasm /codebase <Path to DLL file>\AzureMLPrediction.dll /tlb:<Path to tlb file>\AzureMLPrediction.tlb

fgutierrez wrote Oct 12, 2014 at 5:23 PM

So I executed the suggested command, everything good and green. Later I discovered that the problem layed within Excel and the content of the cell type. I got the function getJson to work by placing directly the values instead of invoking the value in a cell. However I cannot get function azurePredict to work, I keep getting the message "Failed to connect to prediction REST API endpoint: The remote server returned an error: (400) Bad Request.. Please check the URL.".
Tests done from the Azure ML webservice site are delivering the score and value.
Any idea ??

neerajkh wrote Oct 13, 2014 at 3:11 AM

Usually, you will get 400 BAD request due to incorrect parameters.

Try using the command:

"=azureFastPredict(Cell Range for input values)" without any other optional parameters after doing "=getJson". Also, make sure your column names don't have '0' or ':' as part of the header since they are used as pattern to replace it with actual values