QueryTable.PreserveColumnInfo 属性 (Excel)

如果每次刷新查询表时,列排序、筛选和布局信息都会保留,则该值为 True。 默认值为 TrueBoolean 类型,可读写。

语法

表达式PreserveColumnInfo

表达 一个代表 QueryTable 对象的变量。

备注

只有当查询表使用数据库连接时,该属性才有效。

可以将该属性设置为 False,以便与 Microsoft Excel 的早期版本兼容。

如果使用用户界面导入数据,则来自 Web 查询或文本查询的数据将作为 QueryTable 对象导入,而所有其他外部数据将作为 ListObject 对象导入。

如果使用对象模型导入数据,则必须将 Web 查询或文本查询中的数据作为 QueryTable 导入,而所有其他外部数据都可以作为 ListObjectQueryTable 导入。

使用 ListObjectQueryTable 属性访问 PreserveColumnInfo 属性。

示例

本示例保留列排序、筛选和布局信息,以便与 Microsoft Excel 的早期版本兼容。

Dim cnnConnect As ADODB.Connection 
Dim rstRecordset As ADODB.Recordset 
 
Set cnnConnect = New ADODB.Connection 
cnnConnect.Open "Provider=SQLOLEDB;" & _ 
 "Data Source=srvdata;" & _ 
 "User ID=wadet;Password=4me2no;" 
 
Set rstRecordset = New ADODB.Recordset 
rstRecordset.Open _ 
 Source:="Select Name, Quantity, Price From Products", _ 
 ActiveConnection:=cnnConnect, _ 
 CursorType:=adOpenDynamic, _ 
 LockType:=adLockReadOnly, _ 
 Options:=adCmdText 
 
With ActiveSheet.QueryTables.Add( _ 
 Connection:=rstRecordset, _ 
 Destination:=Range("A1")) 
 .Name = "Contact List" 
 .FieldNames = True 
 .RowNumbers = False 
 .FillAdjacentFormulas = False 
 .PreserveFormatting = True 
 .RefreshOnFileOpen = False 
 .BackgroundQuery = True 
 .RefreshStyle = xlInsertDeleteCells 
 .SavePassword = True 
 .SaveData = True 
 .AdjustColumnWidth = True 
 .RefreshPeriod = 0 
 .PreserveColumnInfo = True 
 .Refresh BackgroundQuery:=False 
End With

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。