First of all, just a little explanation of what you are doing: The file you are saving, and then opening in Excel is known as a tab delimited text file, it contains only data and information on how to divide that data into rows an columns (each column is separated by a tab and each row is separated by a newline). This is a common format for storing spreadsheet style data, and doesn't have anything specific to do with Excel. You can open it in any program which recognizes ASCII files, and that program will determine how to interpret the tab-delimited data (the way that Excel interprets it is the cause of your previous problem). This file format contains no other information (i.e. formatting). So the answer to your question is "no" the way you are currently doing things.
However, there are a couple of other paths you could take:
1. In contrast to a tab-delimited text file, a .xls file is an excel-specific binary file which contains data, in addition to formatting and other informatin (i.e. divides the data into workbooks and sheet, specifies column heights and widths, adds charts and graphs, etc.). Obviously, creating a .xls file requires an awful lot more work than the tab delimited text file (especially since it uses a pseudo-proprietary binary format). For practical purposes, you would never manually create a .xls file.
What you can do is call the actual excel program through ActiveX and use it to write a .xls file. This isn't a trivial task, however there is lots of code already written. The development library has tons of examples of using Excel through ActiveX, and the Report Generation Toolkit is specifically designed to create reports in more advanced formats, including Excel .xls files, by using ActiveX (boy, I'm just full of shameless plugs this week ;)).
2. Another option would be to stick with a tab-delimited text file, but include the formatting information, such as the column width, in a separate cell. You could then write an Excel macro which adjusts the formatting based upon the values of these cells. While you are at it, you could also manually specify how the file is imported to solve your previous problem. The disadvantages of this approach are first, you have to write an excel macro, which isn't something I can help you with (I usually stick to DIAdem script), but you can probably find lots of good examples on the web. Second, anyone opening your file is going to have to have that Excel macro, and will have to know to run it rather than opening the file normally (i.e. you wouldn't just be able to double click on the file in Windows Explorer, you'd need to open up Excel and run a macro).
Hope that helps,
Ryan K.