Microsoft Office (Excel) vs LibreOffice/OpenOffice

I do not have MS Office installed, as I use LibreOffice/OpenOffice.

I’m building a script to import a long set of Sheets from a consultant that uses Autocad + Excel, and create the placeholder sheets for those.

Is there a way to bypass MS Office and call LibreOffice/OpenOffice, as I get the “Excel is not installed” error for the “ExcelRead” node.

Thanks for your help/suggestions!

I tried to solve your issue, but it is too timeconsuming for me as I’m not an expert in this field by any means. But here is what I wanted to do, in order:

  1. Try to find a .dll library that has ability to open .ods directly, import .dll in dynamo directly with zero touch import: https://github.com/DynamoDS/Dynamo/wiki/Zero-Touch-Plugin-Development and then place ods-reader as a node.
  2. An openoffice document is really just a collection of .xml files, unpack with 7-zip or similar software and search for xml-reader/parser .dll that can be imported directly in dynamo. then set the content.xml as input file.
  3. if .dll’s cannot be found, try to find ironpython scripts that can be called from a pythonscript in dynamo.

I hope somebody have got the time to solve this, in true opensource spirit! :wink:

Jostein - thanks for trying to help. I’ll look myself into solving this following the path you suggested. Once I have something working, I’ll post here.

Hello

I know this post is very old but it’s still relevant for me. I would like export data to libre office. I know that’s possible with excel but i didn’t found the solution for libre office.

thanks for your help and sorry for my english

Have you tried using the CSV nodes instead? LO works great with csv files.

Perfect It works. But I still have problem with font and unity. I gonna look for the good setting.
Thanks for your help !

Have you tried using Unicode encoding?

Yes i do, but i have a lot of error in my file. There is data that is embedded in the file while they are not present in the watch block . This parasitic data is not present when I do it with excel.
I do not understand why they appear

Seems like some regional settings are interfering with the CSV’s encoding? Could you give the “File.WriteToCSV” node from the clockwork package a try? It might be able to avoid this issue.

I have tried. But i don’t know what put in “delimiter” input. There is only the text that works if i put nothing in there.
Thanks a lot for your help, I start and I have a lot of trouble.

Have you tried just using the default comma value? You can feed any delimiter you’d like, as a string. You just have to make sure to use the same setting in LO. For example, Revit’s default value for family catalogs is ##

Yes but that give me that : for the clockwork node

and for the revit csv node

In one case that give me too much data and the other not enother. And for the same file.
I don’t understand because when i look the watch node it’s seems like working. The data are there and good organized

The clockwork csv node expects only strings and numbers. Your lists include elements and that seems to break things down.

And the built in csv node is failing because your regional settings are set up to use commas for the decimal delimiter.

You’ll have to either change your regional settings in Windows or get the string representation from each element with the “string from object”/“element.name” node.0

As a last resort, you could try the python csv module.

1 Like

Hello, you should replace null values. These nodes could also be useful here:

Have you tried Archi-lab.net package and the CSV parsing tools in there?

Hi @simon.mahiet

This topic is 2 years old. Could you please start a new thread and link this topic as reference.

@Konrad_K_Sobon 's archi-lab and Bumble Bee packages has wonderful nodes to tackle almost all the issues related to excel and csv files.