Home > Excel > Add-Ins > Text Write
Web This Site

Earl Kiosterud, who was a Microsoft MVP for Excel some years back, created the 'text write program.' 

I have just become aware that Earl's smokeylake.com site is no longer operational. 

I downloaded a version from the Wayback Machine website (http://web.archive.org/web/20100515203138/http:/www.smokeylake.com/excel/text_write_program.htm).  It is available from the link below.  The accompanying documentation is below:

The workbook is made available "as is."  It is up to you to ensure that it works properly for you.  Use it at your own risk and discretion.

The Text Write Program is a Microsoft Excel workbook with a macro program that writes any sheet of any open workbook to a text file with lots of options. 

Setup Sheet. 

Here you specify your options.  There is help on the options. A typical setup sheet:

File Name to write:  a.txt, or C:\My Documents\a.txt
Record Delimiter: Code/Character 13,10
Stop if Record Delimiter found in cell?: Yes
Field Delimiter: Code/Character , (comma)
Bracketing Code/Character (text qualifier): " (quotation mark)
Bracket data fields?: Yes
     Bracket blank fields also?: No
Skip blank rows?: No
Write entire sheet?: Yes
     If no, Expand selection?: No
     If no, write rectangular?: No

Then you switch to the sheet to be written (in any open workbook), and press Ctrl-Shift-W.  It writes the file, letting you know its progress.

Download Text Write Program-1e.zip

Download Text Write Program (from the Wayback Machine archive)

The Text Write Program is now at the 1e level.  Text Write Program-1e.xls.  The following changes were made:

    It can write sheets with more than 32K rows.

    It disallows making any user changes while running to prevent incorrect output. 


    The program cannot write more than 1024 characters from a cell (or maybe 1023).  This appears to be a VBA limitation, and I don't know of any workaround.  The program uses the Range().Text method to get the cell data, as formatted and the limitation appears to be there.