Windows Scripting Host から既存のXLS ファイルの内容をすばやく操作する方法はありますか?
顧客から受け取った Excel テンプレートがあります。私たちの仕事は、これらのテンプレートに Oracle データベースから取得したデータを入力することです。
現在のアプローチは、Windows Scripting Host と VBScript を使用することです。
ADODB を使用して Oracle からデータを取得します。
Set db = CreateObject("ADODB.Connection") SQL = "SELECT ..." Set rs=db.execute(SQL)
VBScript を使用して、Windows Scripting Host で Excel オブジェクトを作成します。
Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open(xls_final) Set objSheet = objWorkBook.Sheets(1)
そして、次のようにテンプレートのセルごとに入力します。
If rs.EOF = False Then rs.MoveFirst Do Until rs.EOF objSheet.Cells(RowNumber, 1).Value = rs("COLUMN1") objSheet.Cells(RowNumber, 2).Value = rs("COLUMN2") objSheet.Cells(RowNumber, 3).Value = rs("COLUMN3") rs.MoveNext Loop End If objWorkbook.Save rs.Close
問題は、これらのファイルの一部に大量のデータが含まれており、このように埋めるのに何時間もかかることです。それを行うより速い方法はありますか?