[Request for Feedback] New Dynamo Excel nodes

Greetings from Dynamo team!

It has been a while since I wrote in forum to introduce you new progress our team made. If you have been following our blogposts, you may know we have just released Dynamo 2.12.0 - our biggest point release ever since 2.0 with a bunch of improvements and new features developed for your ease of using Dynamo. In this post, I am going to focus on a small slice of the release - the new Dynamo Excel nodes using OpenXML standards. Introducing two brand new nodes, the Data.OpenXMLImportExcel (An alternative to Data.ImportExcel ) and Data.OpenXMLExportExcel (An alternative to Data.ExportToExcel ).

Now you may have raised your hand already: why do you guys make a new set of excel nodes? Well, because the old ones came with the following restrictions.

  • The legacy set of Excel nodes are depending on a local installation of MS Office
  • The MS Office installation needs to be 64bit version to maintain max compatibility with Dynamo node. We have seen cases that 32bit version does not work with legacy set of Excel nodes.
  • The MS Excel application will be launched when the Excel node runs. If for any reason this process fails, the execution of legacy set of Excel nodes fail. e.g. broken installation of Excel, license issue, version compatibility
  • The MS Excel application will be launched when the Excel node runs. This introduce performance bottleneck to your Dynamo workflow in a lot of the time. The time spent to launch Excel is much longer than data read/write usually.

The new set of nodes get rid of these restrictions by enabling users to interact with .xlsx files directly in Dynamo, regardless of whether or not you have MS Office installed or not. This should reduce the Dynamo setup pain and let users develop and share Dynamo workflows which work more universally. The new set of nodes will return True or False based on if the read/write action to file succeeded or not. These node also come with similar inputs and order. Our team also have new sample files created for them. Here is a screen shot of them.

Cases we are still not supporting:

  • Target path is too long
  • Target path is read only or lack of permission through Dynamo, e.g. readonly path, path on a network drive or mapped path from OneDrive etc

You can try these new nodes out in Dynamo 2.12.0 sandbox release and our major integrators are on the way adopting it already. Hope this thread helps and we are also hear to listen to your feedback on the new nodes or any other issue you have. More exciting news are coming in our future releases and we will let you know soon.

Cheers,
Aaron-

24 Likes

It would be great to have a feature to append data to an existing excel file preserving the format

2 Likes

One can create a template, just like you can in Revit.
You can also format an excel file with a macro

4 Likes

Thatā€™s true. I prefer CSV nodes to Excel nodes because they fail/freeze most of the time unexpectedly. Itā€™s not good to rely on current Excel nodes when you share your workflow with other users.

1 Like

Thanks @Aaron_Tang Really great work :slight_smile:

@theshysnail CSV is great, unfortunately for me I often need to extract data which might include stray commas (feedback, comments etc.) which breaks itā€¦ So I appreciate being able to use Excel.

3 Likes

@Mark.Ackerley

Why not use a different delimiter like * or _ at the beginning and end of every string so you can skip those stray commaā€™s and breaks?

2 Likes

Thanks Marcel, Iā€™ll have a look at it :slight_smile:

1 Like

Hi,

I have been unable to use the usual import and export nodes for a few days now. I work in Dynamo with Revit.

The message: ā€œWarning: Data.ImportExcel operation failed.ā€.

My version of Office is 64bit and I have checked that everything is installed correctly.

Does this change have anything to do with it?

Cheers

Hi,
These two new nodes should not affect how the old excel nodes work. As they do not share implementation.

Are you experiencing a regression that the excel nodes used to work for you but now no longer works?

Hello,

Sorry for my absence. Yes, I am experiencing exactly that.

I found this topic: Excel Data.ImportExcel operation Failed

I reinstalled both Office and any Autodesk product with a ā€˜clearunistallā€™. But Iā€™m still having the same problem. Iā€™m thinking of formatting the computer to see if that solves it.

Thanks for your help

Hi,
any ideas why Data.OpenXMLImportExcel node imports cell values and in some cases imports function+value? In excel no differece between the cells. .xlsx, Excel 2007(donā€™t askā€¦-.-ā€™) :frowning:

@martin.misol any thoughts on this one? :slight_smile:

Iā€™m not sure if I should start a new thread for this or not, but Iā€™m having trouble with the Data.OpenXMLImportExcel node. Iā€™m getting a warning ā€œSpecified argument was out of the range of valid values. Parameter name: indexā€. See image below. The old node is working fine (in this case) and reading the same file that the new node is throwing an error on.

Iā€™m trying to understand what this means.

I had a theory that this error message was telling me the file was too big, but then I created a larger file with dummy data and it worked fine. I tried ā€œbreakingā€ this new dummy Excel file by adding formulas, formatting, data validation, etc. But the OpenXML node reads all of this fine. So now Iā€™m out of ideas. What is this error message trying to tell me?

Revit 2022.1

Dynamo
image

@martin.misol any ideas on this error :slight_smile: ?

@ehall Do you mind sharing me a subset of the graph which can reproduce this error? I can take a look

@solamour no ideas on this one?

@kovacsv hrm, first time Iā€™ve seen this. 99% sure itā€™s to do with the OpenXML library we are using and probably a bug on their side. We can look into it :pray:

1 Like

Thanks, I can filter out the formulas for now, but with larger excel files it can be time consuming during runs.

@kovacsv weā€™ve discussed and itā€™s hard to tell without the Excel file you are working on, but we also donā€™t think OpenXML supports the use of formulas. Do other formula cells work correctly? The library itself is not using Excel at all, so wonā€™t have full parity support for all of Excelā€™s functions.

If you are able to share your excel file here, then please do. If you wish it to be private, feel free to share on a DM :slight_smile: