0
複数のセルとシートから入力を取得してクエリを作成し、そのクエリを接続に使用するモジュールを作成します。Excelモジュール - テーブル接続のための入力として複数のセルを取得
異なるExcelファイルで使用されているピボットテーブルに対して同じジョブを実行するモジュールをコピーしましたが、通常のテーブルで作業したいと考えています。
概要Excelファイル:フィルタリングするために使用する必要がある名前のリストと
シート「設定」。
シート「すべてのインシデント2014」には、接続があり、新しいクエリで更新する必要があるテーブルがあります。
WHEREステートメントなしで使用したいクエリを持つシート "SQL"。また、接続文字列がここに置かれています。
ピボットテーブルの場合はピボットテーブルを使用するのが普通ですが、今回はテーブルです。私は、これをテーブルで動作させるために何を使用しなければならないかを知りたいと思います。
Set tab_I = ActiveWorkbook.Worksheets("All Incidents 2014").Range("A1").TableObject
Module:
--------------------------------------
Function Update_2014()
'-----------------------------------------------------------------
Dim in_sql As String
Dim sql_I1 As String
Dim tab_I As TableObject
Dim connection As String
'-----------------------------------------------------------------
in_sql = ""
sql_I1 = ActiveWorkbook.Worksheets("SQL").Range("A1").Value
Set tab_I = ActiveWorkbook.Worksheets("All Incidents 2014").Range("A1").PivotTable
connection = ActiveWorkbook.Worksheets("SQL").Range("B1")
'-----------------------------------------------------------------
For Each s In ActiveWorkbook.Worksheets("Settings").Range("C5:C500")
If s.Value = "" Then
in_sql = in_sql
Else
in_sql = in_sql & "'%" & s.Value & "%'," '& vbCrLf
End If
Next s
in_sql = Left(in_sql, Len(in_sql) - 1)
'-----------------------------------------------------------------
tab_I.PivotCache.connection = "OLEDB;"
sql_I1 = sql_I1 & ", table (sys.odcivarchar2list (" & in_sql & ")) Where SERVICE like column_value"
tab_I.PivotCache.CommandText = sql_I1
tab_I.PivotCache.connection = connection
'-----------------------------------------------------------------
tab_I.Refresh
End Function