私も同様の問題を抱えており、最終的には、スプレッドシートを照会して入力するVBAコードを使用してスプレッドシートを作成しました。私の仕事は、それぞれが異なるシートにある一連のテーブルをエクスポートすることでしたが、任意のフラグを使用して新しいシートに切り替えることができました。とにかく、あなたがコードを見たいかどうか私に知らせてください。これがあなたを助けるかもしれないチャンクです。TableSQL文字列を選択したものに変更するだけです。返された各レコードは、シートに行として挿入されます。次に、決定したフラグに基づいて、作成して次のシートに移動できます。さらに情報が必要な場合はお知らせください(この特定の例は、実際に行っていることではないため)
Private Sub getMyRows(inSchema As String, InTable As String)
Dim RS As Object
Dim TableSQL As String
Dim DataType As String
Dim DataLength As String
Dim DataPrecision As String
Dim DataScale As String
Dim ColCount As Integer
Dim WS As Worksheet
' create a sheet with the current table as name
Worksheets.Add().Name = InTable
Set RS = CreateObject("ADODB.recordset")
TableSQL = "Select * from " & inSchema & "." & InTable
' grab the data
RS.Open TableSQL, conn, adOpenStatic
For ColCount = 0 To RS.Fields.Count - 1
' set column headings to match table
ActiveSheet.Cells(1, ColCount + 1).Value = RS.Fields(ColCount).Name
Next
' copy table data to sheet
With Worksheets(InTable).Range("A2")
.CopyFromRecordset RS
End With
RS.Close
End Sub