Excel 2003 を使用しています。私の要件は、Excel シートを 10 分ごとに開いて保存することです。
マイ シートは ODBC 接続を使用してデータを取得し、開くたびに更新します。
Excelシートを開き、閉じる前に保存するVBスクリプトを呼び出すbatファイルを実行するスケジュールされたタスクを作成しました。
バットファイル
C:\SaveExcel.vbs C:\MySheet.xls
Exit
VB スクリプト:
Dim args, objExcel
Set args = WScript.Arguments
Set objExcel = CreateObject("Excel.Application")
objExcel.Workbooks.Open args(0)
objExcel.Visible = True
objExcel.Workbooks.Open "C:\Program Files\Microsoft Office\OFFICE11\Library\Analysis\FUNCRES.XLA"
objExcel.Addins("Analysis Toolpak").Installed = True
objExcel.Addins("Analysis ToolPak - VBA").Installed = True
objExcel.ActiveWorkbook.RefreshAll
WScript.Sleep 10000 ' Waiting as refresh may take upto ten seconds
objExcel.ActiveWorkbook.Save
objExcel.ActiveWorkbook.Close(0)
objExcel.Quit
上記の問題は、アドイン「Analysis Toolpak」がロードされていないため、上記の VB を使用してシートを開くと、ほとんどの式が機能しないことです。
CMDで開くと、アドインが機能します。
CMD>"C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE" "C:\MySheet.xls"
VB で目が覚めたことはありません。要件を満たすために cmd と vb をマージする方法はありますか?
ありがとう