SQLServer, Excel, Access の 連携
MDB上のテーブルを Excel・SQLServerに インポート/エクスポートする (テーブル指定)
接続文字列
lesson001.con
ODBC;DRIVER={SQL Server};SERVER=xxxxxx;DataBase=adventureworksdw;UID=yyyyyy;PWD=zzzzzz;
インポート/エクスポート用スクリプト
lesson005.vbs
'SQLServer 接続文字列 読み込み Private fs Set fs = CreateObject("Scripting.FileSystemObject") Private tsCon Set tsCon = fs.OpenTextFile(WScript.Arguments(3)) Private sCon: sCon = "" If Not tsCon.AtEndOfStream Then sCon = tsCon.ReadLine End If tsCon.Close Set tsCon = Nothing Set fs = Nothing 'Access を 起動 Dim accessApp Set accessApp = CreateObject("Access.Application") accessApp.Visible = True 'MDB ファイルを 開く accessApp.OpenCurrentDataBase WScript.Arguments(0) Dim acTable: acTable = 0 Dim acImport: acImport = 0 Dim acExport: acExport = 1 Dim acSpreadsheetTypeExcel9: acSpreadsheetTypeExcel9 = 8 'Excel に エクスポート accessApp.DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "IMPORT_" & WScript.Arguments(1), WScript.Arguments(2), True, "" 'Excel から インポート accessApp.DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "EXCEL_" & WScript.Arguments(1), WScript.Arguments(2), True, "" 'SQLServer に エクスポート accessApp.DoCmd.TransferDatabase acExport, "ODBC", sCon, acTable, "EXCEL_" & WScript.Arguments(1), "EXCEL_" & WScript.Arguments(1) accessApp.Quit Set accessApp = Nothing