This documentation is archived and is not being maintained.

Workbooks.OpenText Method

Office 2007
Loads and parses a text file as a new workbook with a single sheet that contains the parsed text-file data.


expression.OpenText(Filename, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, TextVisualLayout, DecimalSeparator, ThousandsSeparator, TrailingMinusNumbers, Local)

expression   A variable that represents a Workbooks object.


NameRequired/OptionalData TypeDescription
FilenameRequiredStringSpecifies the file name of the text file to be opened and parsed.
OriginOptionalVariantSpecifies the origin of the text file. Can be one of the following XlPlatform constants: xlMacintosh, xlWindows, or xlMSDOS. Additionally, this could be an integer representing the code page number of the desired code page. For example, "1256" would specify that the encoding of the source text file is Arabic (Windows). If this argument is omitted, the method uses the current setting of the File Origin option in the Text Import Wizard.
StartRowOptionalVariantThe row number at which to start parsing text. The default value is 1.
DataTypeOptionalVariant Specifies the column format of the data in the file. Can be one of the following XlTextParsingType constants: xlDelimited or xlFixedWidth. If this argument is not specified, Microsoft Excel attempts to determine the column format when it opens the file.
TextQualifierOptionalXlTextQualifierSpecifies the text qualifier.
ConsecutiveDelimiterOptionalVariantTrue to have consecutive delimiters considered one delimiter. The default is False.
TabOptionalVariantTrue to have the tab character be the delimiter (DataType must be xlDelimited). The default value is False.
SemicolonOptionalVariantTrue to have the semicolon character be the delimiter (DataType must be xlDelimited). The default value is False.
CommaOptionalVariantTrue to have the comma character be the delimiter (DataType must be xlDelimited). The default value is False.
SpaceOptionalVariantTrue to have the space character be the delimiter (DataType must be xlDelimited). The default value is False.
OtherOptionalVariantTrue to have the character specified by the OtherChar argument be the delimiter (DataType must be xlDelimited). The default value is False.
OtherCharOptionalVariant(required if Other is True). Specifies the delimiter character when Other is True. If more than one character is specified, only the first character of the string is used; the remaining characters are ignored.
FieldInfoOptionalVariantAn array containing parse information for individual columns of data. The interpretation depends on the value of DataType. When the data is delimited, this argument is an array of two-element arrays, with each two-element array specifying the conversion options for a particular column. The first element is the column number (1-based), and the second element is one of the XlColumnDataType constants specifying how the column is parsed.
TextVisualLayoutOptionalVariantThe visual layout of the text.
DecimalSeparatorOptionalVariantThe decimal separator that Microsoft Excel uses when recognizing numbers. The default setting is the system setting.
ThousandsSeparatorOptionalVariantThe thousands separator that Excel uses when recognizing numbers. The default setting is the system setting.
TrailingMinusNumbersOptionalVariantSpecify True if numbers with a minus character at the end should be treated as negative numbers. If False or omitted, numbers with a minus character at the end are treated as text.
LocalOptionalVariantSpecify True if regional settings of the machine should be used for separators, numbers and data formatting.


FieldInfo Parameter Information

You can use xlEMDFormat only if you have installed and selected Taiwanese language support. The xlEMDFormat constant specifies that Taiwanese era dates are being used.

The column specifiers can be in any order. If there's no column specifier for a particular column in the input data, the column is parsed with the General setting.

Bb223513.vs_note(en-us,office.12).gif  Notes
  • If you specify that a column is to be skipped, you must explicitly state the type for all remaining columns or the data will not parse correctly.
  • If there is a recognizible date in the data, the cell will be formatted as a date in the worksheet even if the setting for the column is General. Additionally, if you specify one of the above date formats for a column and the data does not contain a recognized date, then the cell format in the worksheet will be General.

This example causes the third column to be parsed as MDY (for example, 01/10/1970), the first column to be parsed as text, and the remaining columns in the source data to be parsed with the General setting.

Visual Basic for Applications
Array(Array(3, 3), Array(1, 2))

If the source data has fixed-width columns, the first element in each two-element array specifies the position of the starting character in the column (as an integer; character 0 (zero) is the first character). The second element in the two-element array specifies the parse option for the column as a number between 0 and 9, as listed in the preceding table.

ThousandsSeparator Parameter Information

The following table shows the results of importing text into Excel for various import settings. Numeric results are displayed in the rightmost column.

System decimal separatorSystem thousands separatorDecimal separator valueThousands separator valueText importedCell value (data type)
PeriodCommaCommaPeriod123.123,45123,123.45 (numeric)
PeriodCommaCommaComma123.123,45123.123,45 (text)
CommaPeriodPeriodComma123,123.45123,123.45 (numeric)
PeriodCommaPeriodComma123 123.45123 123.45 (text)
PeriodCommaPeriodSpace123 123.45123,123.45 (numeric)


This example opens the file Data.txt and uses tab delimiters to parse the text file into a worksheet.

Visual Basic for Applications
Workbooks.OpenText filename:="DATA.TXT", _
    dataType:=xlDelimited, tab:=True