整理了一些常用產生 Excel 的程式碼,包含基本的建立存檔、Excel 存取、建立工作表、刪除

工作表、選取使用工作表、設定字型、調整欄寬等。

建立Excel 檔案

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Add
 
'不顯示 Excel Alerts
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
 
'設定 A1 欄位值為 test
objExcel.Cells(1,1).Value="test"
 
'儲存檔案到 c:\test.xls
objWB.SaveAs("c:\test.xls")
objExcel.Quit

打開已存在的 Excel 檔案,存取資料

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Open("c:\test.xls")
 
'不顯示 Excel Alerts
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
 
'寫入 A1 欄位值為 test
objExcel.Cells(1,1).Value="test"
 
'讀取 A1 欄位值
Wscript.Echo objExcel.Cells(1,1).Value
 
objWB.SaveAs("c:\test.xls")
objExcel.Quit

建立工作表

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Add
 
'不顯示 Excel Alerts
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
 
'插入工作表到最後
Set ws=objWB.Sheets.Add(,objWB.WorkSheets(objWB.WorkSheets.Count))
ws.Name="test1"
 
objWB.SaveAs("c:\test.xls")
objExcel.Quit

刪除工作表

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Add
 
'不顯示 Excel Alerts
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
 
'刪除工作表
objExcel.WorkSheets("Sheet1").Delete()
 
objWB.SaveAs("c:\test.xls")
objExcel.Quit

選取使用工作表

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Add
 
'不顯示 Excel Alerts
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
 
'選取使用工作表
Set objWS1=objExcel.Worksheets("Sheet3")
objWS1.Cells(1,1).Value="test"
 
objWB.SaveAs("c:\test1.xls")
objExcel.Quit

設定欄位字型

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Add
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
 
'設定字型
objExcel.Cells(1,1).Value="test"
objExcel.Cells(1,1).Font.Bold=true
objExcel.Cells(1,1).Font.Size=14
objExcel.Cells(1,1).Font.Name="Times New Roman"
 
objWB.SaveAs("c:\test.xls")
objExcel.Quit

自動調整欄位 Range

Set objExcel=CreateObject("Excel.Application")
Set objWB=objExcel.Workbooks.Add
objExcel.DisplayAlerts=False
ObjExcel.Visible=False
objExcel.Cells(1,1).Value="test test test test"
 
'自動調整欄位 Range
Set objRange=ObjExcel.Range("A1")
objRange.Activate
Set objRange=objExcel.ActiveCell.EntireColumn
objRange.Autofit()
 
objWB.SaveAs("c:\test.xls")
objExcel.Quit

 

將以上程式儲存成 .vbs 副檔名,雙擊滑鼠左鍵,或在命令提示字元輸入 cscript 檔名.vbs

即可執行程式。

 

參考網站:

http://www.activexperts.com/activmonitor/windowsmanagement/scripts/msoffice/excel/

iammic 發表在 痞客邦 PIXNET 留言(0) 人氣()