|
▼鈴木 さん:
こんにちは。
「KataZai」はシート名でしたね。すみません。
「TransferSpredSheet」メソッドには残念ながらシート位置やセル位置を決めて
エクスポートする機能がないので、オートメーションと呼ばれる方法で行います。
>尚最終的に行いたいのは複数クエリから一つのシートのセルを指定(クエリAは
>セルA1〜・クエリBはセルC1〜・クエリCはセルE1〜)に吐き出す。
>このような感じです。
クエリA、クエリB、クエリCと3つで固定であるのかや
「A1」「C1」「E1」が規則性ありと判断して良いかが解らなかったので
以下の様なテーブルを作ってみました。
T_出力情報
SEQ シート名 セル番号 クエリ名
1 KataZai A1 クエリA
2 KataZai C1 クエリB
3 KataZai E1 クエリC
・
・
・
Sub KTZJYOHO()
'要参照設定 Microsoft DAO x.x Object Library
Dim RS As DAO.Recordset
Dim Rst As DAO.Recordset
Dim xlsApp As Object
Dim xlsWkb As Object
Dim XName As String
Dim SName As String
XName = "C:\XU\OrderSystem.xls"
Set xlsApp = CreateObject("Excel.Application")
Set xlsWkb = xlsApp.Workbooks.Open(XName)
Set RS = CurrentDb.OpenRecordset("T_出力情報", dbOpenDynaset)
Do Until RS.EOF
Set Rst = CurrentDb.OpenRecordset _
(RS![クエリ名], dbOpenDynaset)
SName = RS![シート名]
With xlsWkb.Sheets(SName)
.Range(RS![セル番号]).CopyFromRecordset Rst
End With
Rst.Close
RS.MoveNext
Loop
Set Rst = Nothing
RS.Close: Set RS = Nothing
xlsWkb.Close True: Set xlsWkb = Nothing
xlsApp.Quit: Set xlsApp = Nothing
End Sub
|
|