[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Writing to .xlsm files with COM-Interface

From: PhilipNienhuis
Subject: Re: Writing to .xlsm files with COM-Interface
Date: Mon, 12 Aug 2019 16:19:13 -0500 (CDT)

TimotheusNemitz wrote
> PhilipNienhuis wrote
>> I've pushed a few fixes for the io package [*], AFAICS writing to .xlsm
>> should be possible now. At least that works now on my Win7 box.
> That sounds very promising!
> Unfortunately I don't have the knowledge to create a installable tar.gz
> package from the current snapshot of the repo and I'm on a machine without
> admin privileges, so I can't install any build tools.
> I'll test on a Win10/Office 365 machine and report back as soon as a new
> release or a installable version of the current snapshot is available.

You're right, waiting until io-2.4.13 may be a bit of a stretch.
Just download the following files:

(maybe click "raw" in the column at the left side) and swap them for the
files in the io package subdirectory. Where that is? Type:

cd (strrep (which ("xlsopen"), "xlsopen.m", ""))

... and you'll land in the relevant subdir. Replace xlsopen.m there. Then,
goto subdir 'private' and swap the other file.
Please report back if it (swapping files and writing to .xlsm) works for

FYI, I've added xlFileFormats for several common file types, but on my Win7
box with Office 2013, Octave could only write all the .xls* types (incl.
.xls /BIFF8), .htm, .html, .csv (but with ";" field separators), .txt and
Knowing Excel and its reputation a bit I think the ability to write to other
file types largely depends on the Office version at hand.
When trying to write other file types I got an error and a stray (hidden /
zombie) Excel invocation was left running;  you're warned. Somewhere I need
to add code to catch those errors, that will happen before releasing
io-2.4.13.  Plus, similar mods (for writing to other file types) are needed
for LibreOffice (invoked by a Java/UNO bridge rather than COM/ActiveX).


Sent from:

reply via email to

[Prev in Thread] Current Thread [Next in Thread]