| プロパティ | 型 | 説明 |
| Name | String | 名前を付けます |
| FieldNames | Boolean | フィールド名を列の項目名にする |
| PreserveFormatting | Boolean | セルの書式をそのまま適用する |
| BackgroundQuery | Boolean | クエリ実行中もシートの操作が可能 |
| RefreshStyle | Long | セルを上書きするか追加するかを設定する xlOverwriteCells : セルは追加せず上書きする xlInsertDeleteCells : レコードに合わせ行を追加削除する xlInsertEntireRows : セル又は行を削除せず、行を挿入する |
| SavePassword | Boolean | パスワードを保存する |
| SaveData | Boolean | クエリテーブルをブックに保存する |
| PreserveColumnInfo | Boolean | 更新ごとに並べ替え・フィルタ・レイアウト情報を保存する |
| AdjustColumnWidth | Boolean | 更新ごとに列幅を自動調整する |
| RefreshOnFileOpen | Boolean | ブックを開くたびに自動的に更新する |
| RefreshPeriod | Long | 指定した分間隔で更新する。0に設定すると無効 |
| RowNumbers | Boolean | 行番号を追加表示する |
| ResultRange | Rangeオブジェクト | クエリテーブルの領域を返す |
| MaintainConnection | Boolean | 接続を更新後もブックが閉じられるまで維持する |
Option Explicit
Private tqt As QueryTable
'QueryTableオブジェクトでデータベースを読み込む
Private Sub ExReadTable()
Dim ssql As String
'SQL文
ssql = "SELECT * FROM T_顧客マスター"
'QueryTableオブジェクト
Set tqt = ActiveSheet.QueryTables.Add(Connection:="ODBC;DSN=MS Access Database;DBQ=C:\MyHp\ExcelTips\顧客管理.accdb", Destination:=ActiveSheet.Range("B7"), SQL:=ssql)
'プロパティをセット
With tqt
'クエリ名
.Name = "顧客管理クエリ"
'フィールド名を表示する
.FieldNames = True
'クエリ実行中もワークシートの操作が可能
.BackgroundQuery = True
'レコード数に合わせ行数を調整する
.RefreshStyle = xlInsertDeleteCells
'1分間隔で更新する
.RefreshPeriod = 1
'パスワード情報を保存
.SavePassword = True
'クエリテーブルをブックに保存する
.SaveData = True
'列幅を自動調整する
.AdjustColumnWidth = True
'クエリの実行
.Refresh
End With
End Sub
Private Sub CommandButton1_Click()
'QueryTableオブジェクトでデータベースを読み込む
ExReadTable
End Sub
■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します