Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


Writing in Excel file format

Posted on 1999-06-23
Medium Priority
Last Modified: 2013-12-26
I have a customer who would like my export file to be written directly to an xls file.  Please don't suggest a csv file.  Do you think this is possible from unix?
Question by:sosedada
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 3
  • +5

Expert Comment

ID: 1297853
I don't think :(
this question was dicussed in the MFC,Windows or C++ area ... and as far as I remember the xls format can only be read and generated by excel (crypted with nonpublic key).
On windows you can use OLE to write data in an empty excel sheet... but on unix ...?

Expert Comment

ID: 1297854
If you write your export file using specific delimiters (as tab or :) then you can import your file in excel and create the sheet (if it is a table or something like this). When you start excel you will be asked for how to import th file. No automatic open may be performed.

Expert Comment

ID: 1297855
with excel, a special crossing format is the silk format:
check for it under excel to know the necessary structure of data

Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.


Author Comment

ID: 1297856
alextr, that sounds a lot like a comma separated value (csv) file :)

bedot, could you elaborate?

Expert Comment

ID: 1297857
One solution:
create dbf (dBASE) files ( format spec can be found at )
Excel can read/write in that format.

Author Comment

ID: 1297858

I'm going to have to reject your answer because I want to write directly to excel file format (xls).  Thanks for the info.  If you can verify that it is not possible answer again with the info and I will accept it.



Expert Comment

ID: 1297859

I'm using a setup where I actually talk to a Windows-NT system running Excel. I use a perl-script to talk to a server on the Windows machine. The server on the Windows machine "knows" how to talk to Excel via OLE (Win32::OLE module). The content gets created on Unix, sent on to the Windows-NT-server, Excel creates the data, saves the file and the result is shipped back to Unix.
Of course this requires access to a Windows machine.

As far as I know there is no way to write XLS-files directly on Unix.


Expert Comment

ID: 1297860
>> As far as I know there is no way to write XLS-files directly on Unix
Thats what I think ... I'm not 100% sure but 99.4876% ;)


Expert Comment

ID: 1297861
I think it is possible from UNIX.  A while back I put something together that took comma seperated text files and created Excel files (I think it was Excel 2.0).  You just need to know the Excel file format.  Check out:


Expert Comment

ID: 1297862
I am 100% sure that there is not way to read/write xls files in UNIX, microsoft made it clear, in various articles that the only way people would be allowed to use there format was through com, I suppose that one thing you could try however is this. It is possible to run MSOffice on linux(and I assume with other UNIX versions) and there are some porting libs out there that emulate com. This might work, however all your users would have to have msoffice installed. Sorry.


Expert Comment

ID: 1297863

here a part of french help of excel that i found with in the option search of the word SYLK on the help of excel:
several commonj formats are recognized

Convertisseurs de format de fichier fournis avec Microsoft Excel

Les formats de fichier répertoriés dans la boîte de dialogue Enregistrer sous varient en fonction du document actif, s'il s'agit d'une feuille de calcul, d'une feuille graphique ou de tout autre type de feuille. Pour la plupart des formats de fichier, Microsoft Excel convertit uniquement la feuille active. Pour convertir les autres feuilles, activez chaque feuille et enregistrez-les séparément.
Microsoft Excel dispose de la plupart des convertisseurs de fichiers dont vous pouvez avoir besoin. Si le format de fichier souhaité ne s'affiche pas dans les boîtes de dialogue Ouvrir et Enregistrer sous (menu Fichier), vous pouvez installer un convertisseur. Pour plus d'informations, cliquez sur  .

Formats Microsoft Excel

Le format de classeur Microsoft Excel 97 & 5.0/95 enregistre les classeurs aux formats Microsoft Excel 97 et Microsoft Excel versions 5.0/95 dans le même fichier .xls. Les utilisateurs de Microsoft Excel 97 peuvent continuer à travailler dans le classeur et utiliser toutes les fonctionnalités et les mises en forme uniquement disponibles avec cette version. Les utilisateurs de Microsoft Excel version 5.0 ou Microsoft Excel 95 peuvent ouvrir et utiliser le classeur sans devoir le convertir. Il est recommandé d'utiliser le classeur en lecture seule. Si les utilisateurs enregistrent le classeur dans une version antérieure de Microsoft Excel, les fonctionnalités et les mises en forme propres à Microsoft Excel 97 seront perdues. Pour plus d'informations, cliquez sur  .

Formats du classeur entier      Extension de fichier
(Windows uniquement)
Classeur Microsoft Excel (Microsoft Excel 97)      .xls
Modèle (Microsoft Excel 97)      .xlt
Environnements (Microsoft Excel 97)      .xlw
Classeur Microsoft Excel 97 & 5.0/95       .xls
Classeur Microsoft Excel 5.0/95       .xls
Classeur Microsoft Excel version 4.0
(enregistre uniquement les feuilles de calcul, les feuilles graphiques et les feuilles macro)      .xlw
Formats de la feuille active      
Formats de feuille Microsoft Excel version 4.0
(y compris les feuilles macro Microsoft Excel ou international)      .xls, .xlc, .xlm
Formats Microsoft Excel version 3.0       .xls, .xlc, .xlm
Formats Microsoft Excel version 2.x       .xls, .xlc, .xlm
Formats de fichier pour Lotus 1-2-3

Lorsque vous ouvrez un fichier .wk1 ou .wk3 dans Microsoft Excel, Microsoft Excel applique la mise en forme des fichiers .fmt, .fm3 ou .all associés. Si vous enregistrez un fichier Lotus 1-2-3 au format Microsoft Excel, Microsoft Excel enregistre les données et la mise en forme dans un classeur unique.
Les enregistrements aux formats WK1 (1-2-3) (*.wk1) et WK3 (1-2-3) (*.wk3) ne conservent qu'une partie de la mise en forme. Pour enregistrer un classeur Microsoft Excel au format Lotus 1-2-3 et conserver des bordures, des ombrages de cellule, des polices et autres mises en forme, sélectionnez un format de fichier Lotus 1-2-3 qui conserve les mises en forme dans un fichier .fmt, .fm3 ou .all séparé.

Format de fichier Lotus 1-2-3       Version      Remarques
WK4 (*.wk4)      4.0      Enregistre l'intégralité du classeur
WK3 (*.wk3)
WK3, FM3 (*.wk3)      3.x et Lotus 1-2-3/W      Enregistre uniquement les feuilles de calcul et les feuilles graphiques
WK1 (*.wk1)
WK1 (FMT) (*.wk1)
WK1 (ALL) (*.wk1)      2.x      Enregistre uniquement la feuille active
WKS (FMT) (*.wks)      1.0 et 1.0A      Enregistre uniquement la feuille active
.pic (inclus dans un fichier .all)      3.x et Lotus 1-2-3/W      Ouvre mais n'enregistre pas ce format
Formats de fichier texte

Vous pouvez ouvrir et enregistrer des fichiers dans les formats texte suivants. Si vous enregistrez un classeur en format texte, toute la mise en forme est perdue.

Format      Remarques
Texte (séparateur : espace) (*.prn)      Format séparé par des espaces de Lotus. Enregistre uniquement la feuille active.
Texte (séparateur : tabulation) (*.txt) (Windows)
Texte (Macintosh)
Texte (OS/2 ou MS-DOS)CSV (séparateur : virgule) (*.csv) (Windows)
CSV (Macintosh)
CSV (OS/2 ou MS-DOS)      Si vous enregistrez un classeur sous la forme d'un fichier séparé par des espaces ou des tabulations pour une utilisation avec un autre système d'exploitation, sélectionnez le convertisseur approprié afin que les tabulations, sauts de page et autres caractères soient interprétés correctement. Enregistre uniquement la feuille active.
DIF (*.dif)      Enregistre uniquement la feuille active.
SYLK (*.slk)      Enregistre uniquement la feuille active.
Autres tableurs et questionnaires de bases de données

Format      Programmes      Remarques
DBF 2, DBF 3,
DBF 4 (*.dbf)      dBASE II, III et IV      Ouvre et enregistre uniquement la feuille de calcul active.
WQ1 (*.wq1)      QuattroPro pour MS-DOS      Ouvre et enregistre uniquement la feuille de calcul active.
.wb1      QuattroPro version 5.0 pour Windows      Ouverture uniquement.
.wks      Microsoft Works version 2.0 pour Windows et Microsoft Works pour MS-DOS      Ouvre uniquement les feuilles de calcul Microsoft Works version 2.0 pour Windows ou Microsoft Works pour MS-DOS.
Formats du Presse-papiers

Vous pouvez coller les formats de Presse-papiers suivants dans Microsoft Excel à l'aide de la commande Coller ou Collage spécial du menu Edition.

Format      identificateurs des types de Presse-papiers
Picture       Picture (Windows enhanced metafile, EMF)Remarque   Si vous copiez des images Windows metafile (WMF) à partir d'un autre programme, Microsoft Excel colle l'élément sous la forme d'une image EMF (enhanced metafile format).
Bitmap       Bitmap (BMP)
Formats de fichier Microsoft Excel      Formats de fichier binaire pour Microsoft Excel versions 3.0, 4.0, 5.0/95, et Microsoft Excel 97(BIFF, BIFF3, BIFF4, BIFF5 et BIFF8)
Symbolic link format       SYLK
Format Lotus 1-2-3 version 2.x       .wk1
Data interchange format       .dif
Format Texte (séparateur : tabulation)       Text
Format de valeurs séparées par un point-virgule      .csv
Texte mis en forme (uniquement dans Microsoft Excel)      Rich Text Format (RTF)
Objet incorporé      Objets Microsoft Excel, objets provenant de programmes correctement inscrits qui prennent en charge OLE 2.0 (OwnerLink), ainsi que Picture ou d'autres formats de présentation
Objet lié      OwnerLink, ObjectLink, Link, Picture ou d'autres formats
Objet dessiné Office       Format d'objet dessiné Office ou Picture (Windows enhanced metafile format, EMF)
Texte      Display Text, OEM Text

Expert Comment

ID: 1297864
laeuchli is somewhat incorrect.  Micros**t can say whatever it wants, but if you know the file format, there is no reason why you can't write your own application to read/write the format.

Expert Comment

ID: 1297865
I'v seen the excel file format described in the
"Dr. Dobb's Essential Book On File Formats"
It's a CD, so try to find it.



Author Comment

ID: 1297866

I'm afraid you are wrong.  There have been a few right-ish answers and I no longer need to do this.  But the first answer which told me what I wanted was from marcjb, so if you want to answer, I will award you the points.

Accepted Solution

marcjb earned 210 total points
ID: 1297867
thx :)

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction: Dynamic window placements and drawing on a form, simple usage of windows registry as a storage place for information. Continuing from the first article about sudoku.  There we have designed the application and put a lot of user int…
Introduction: The undo support, implementing a stack. Continuing from the eigth article about sudoku.   We need a mechanism to keep track of the digits entered so as to implement an undo mechanism.  This should be a ‘Last In First Out’ collec…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
How to fix incompatible JVM issue while installing Eclipse While installing Eclipse in windows, got one error like above and unable to proceed with the installation. This video describes how to successfully install Eclipse. How to solve incompa…
Suggested Courses

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question