This documentation is archived and is not being maintained.

QueryTable.CommandType Property

Office 2007
Returns or sets one of the XlCmdType constants listed in the following table in the remarks section. The constant that is returned or set describes the value of the CommandText property. The default value is xlCmdSQL. Read/write XlCmdType.



expression   An expression that returns a QueryTable object.


XlCmdType can be one of these XlCmdType constants.
xlCmdCube. Contains a cube name for an OLAP data source.
xlCmdDefault. Contains command text that the OLE DB provider understands.
xlCmdSql. Contains an SQL statement.
xlCmdTable. Contains a table name for accessing OLE DB data sources.

You can set the CommandType property only if the value of the QueryType property for the query table or PivotTable cache is xlOLEDBQuery.

If the value of the CommandType property is xlCmdCube, you cannot change this value if there is a PivotTable report associated with the query table.

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.

You can use the QueryTable property of the ListObject to access the CommandType property.


This example sets the command string for the first query table’s ODBC data source. The command string is an SQL statement.

Visual Basic for Applications
Set qtQtrResults = _
With qtQtrResults
    .CommandType = xlCmdSQL
    .CommandText = _
        "Select ProductID From Products Where ProductID < 10"
End With