Share via


QueryTable.PreserveColumnInfo プロパティ (Excel)

True を指定 すると、クエリ テーブルが更新されるたびに列の並べ替え、フィルター処理、レイアウト情報が保持されます。 既定値は True です。 取得/設定が可能な Boolean 値です。

構文

PreserveColumnInfo

QueryTable オブジェクトを表す変数。

注釈

このプロパティが有効になるのは、クエリ テーブルがデータベース接続を使用しているときだけです。

このプロパティを False に設定すると、以前のバージョンの Excel との互換性を保持することができます。

ユーザー インターフェイスを使用してデータをインポートすると、Web クエリまたはテキスト クエリのデータが QueryTable オブジェクトとしてインポートされ、他のすべての外部データが ListObject オブジェクトとしてインポートされます。

オブジェクト モデルを使用してデータをインポートする場合は、Web クエリまたはテキスト クエリのデータを QueryTable としてインポートする必要があります。一方、他のすべての外部データは ListObject または QueryTable としてインポートできます。

PreserveColumnInfo プロパティにアクセスするには、ListObjectQueryTable プロパティを使用します。

次の使用例は、以前のバージョンの 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 のサポートおよびフィードバックを参照してください。