TestPlugin.zip
In January 2020, Excel introduced a new feature called dynamic arrays and files saved in previous versions could have the implicit intersection operator (@) affixed to the beginning of their function calls.
We have a plugin that creates a User Defined Function (via ExcelDNA), and we use the Infragistics Excel Library to write the .xlsx file where that UDF is referenced.
Because of these changes, our plugin is now having problems when the files are loaded. We can fix the UDF so it returns a dynamic array but the Excel Library is still writing an older layout. We have tried both using WorkbookFormat.Excel2007 and WorkbookFormat.StrictOpenXml.
Is the library (WorkbookFormat) going to be updated for newer versions of Excel? I'm currently using the WPF 21.1.27.
Learning more, I came across this:
https://docs.microsoft.com/en-us/office/vba/excel/concepts/cells-and-ranges/range-formula-vs-formula2
Is there a way to set the Formula2 field using the library?
Hello Walter,
Hi, not at this time.
Dynamic arrays are not currently supported, however if you can provide us with an excel file that's having issues loading and saving we can perhaps optimize this area for the time being. At this time, we don't have any estimates on when we're going to add dynamic array support
You can suggest new product ideas for future versions (or vote for existing ones) at <https://ko.infragistics.com/community/ideas>. Submitting your idea will allow you to communicate directly with our product management team, track the progress of your idea at any time, see how many votes it got, read comments from other developers in the community, and see if someone from the product team has additional questions for you. Remember when submitting your idea to explain the context in which a feature would be used and why it is needed as well as anything that would prevent you from accomplishing this today. You can even add screenshots to build a stronger case. Remember that for your suggestion to be successful, you need other members of the community to vote for it.
Let me know if you have any questions.
We found we can get the desired behavior by using:
WorksheetRegion region = new WorksheetRegion(sheet, 0, 0, 0, 2); region.ApplyArrayFormula("=MyTestFunc()");