QueryTable.TextFileColumnDataTypes Property

Excel Developer Reference

Returns or sets an ordered array of constants that specify the data types applied to the corresponding columns in the text file that you’re importing into a query table. The default constant for each column is xlGeneral. Read/write Variant.

Syntax

expression.TextFileColumnDataTypes

expression   A variable that represents a QueryTable object.

Remarks

You can use the xlColumnDataType constants listed in the following table to specify the column data types used or the actions taken during the data import.

Constant Description
xlGeneralFormat General
xlTextFormat Text
xlSkipColumn Skip column
xlDMYFormat Day-Month-Year date format
xlDYMFormat Day-Year-Month date format
xlEMDFormat EMD date
xlMDYFormat Month-Day-Year date format
xlMYDFormat Month-Year-Day date format
xlYDMFormat Year-Day-Month date format
xlYMDFormat Year-Month-Day date format

Use this property only when your query table is based on data from a text file (with the QueryType property set to xlTextImport).

If you specify more elements in the array that there are columns, those values are ignored.

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

If you import data using the user interface, data from a Web query or a text query is imported as a QueryTable object, while all other external data is imported as a ListObject object.

If you import data using the object model, data from a Web query or a text query must be imported as a QueryTable, while all other external data can be imported as either a ListObject or a QueryTable.

The TextFileColumnDataTypes property applies only to QueryTable objects.

Example

This example imports a fixed-width text file into a new query table on the first worksheet in the first workbook. The first column in the text file is five characters wide and is imported as text. The second column is four characters wide and is skipped. The remainder of the text file is imported into the third column and has the General format applied to it.

Visual Basic for Applications
  Set shFirstQtr = Workbooks(1).Worksheets(1) 
Set qtQtrResults = shFirstQtr.QueryTables _
        .Add(Connection := "TEXT;C:\My Documents\19980331.txt", _
        Destination := shFirstQtr.Cells(1, 1))
With qtQtrResults
    .TextFileParseType = xlFixedWidth
    .TextFileFixedColumnWidths = Array(5, 4)
    .TextFileColumnDataTypes = _
        Array(xlTextFormat, xlSkipColumn, xlGeneralFormat)
    .Refresh
End With

See Also