Getting Rid of Extra Quote Marks in Exported Text Files

Sometimes the export filters used by Excel can produce undesired results in the exported file. For instance, when you export to a tab-delimited text file, some Excel filters place quote marks around the text in a cell. For instance, assume that a particular cell contains the following text:

Create bts; sitemask = "0110"; pcmlink = 40

This, however, is how the text in the cell is exported by Excel:

"Create bts; sitemask = ""0110""; pcmlink = 40"

Notice that Excel adds extra quotation marks, first around the entire cell contents, and then an extra set around any previously “quoted” text within the cell.

One solution for handling the problem is to simply load the text file created by Excel into another program, such as Word, and use the Find and Replace feature to remove the undesired quotes. A better solution, however, is to create your own macro that creates the output text file. Consider the following macro:

Sub Export()
 Dim r As Range, c As Range
 Dim sTemp As String

 Open "c:MyOutput.txt" For Output As #1
 For Each r In Selection.Rows
 sTemp = ""
 For Each c In r.Cells
  sTemp = sTemp & c.Text & Chr(9)
 Next c

 'Get rid of trailing tabs
 While Right(sTemp, 1) = Chr(9)
  sTemp = Left(sTemp, Len(sTemp) - 1)
 Wend
 Print #1, sTemp
 Next r
 Close #1
End Sub

All you need to do is select the cells you want to export, and then run the macro. The cells in the selection are extracted from the worksheet and placed in the file c:MyOutput.txt. (This filename can be changed in the macro to whatever your needs dictate.)