VBS遍歷Excel工作表的方法

大雄45發表於2021-06-11
導讀 這篇文章主要介紹了VBS遍歷Excel工作表的實現程式碼,需要的朋友可以參考下

核心程式碼

'******************************************
'拖拽檔案,獲取檔案路徑
'******************************************
If wscript.Arguments.count=0 then 
        msgbox "拖拽檔案到本圖示",0,"提示"
End if 
  
  
for a=0 to wscript.Arguments.count-1
  
    strPath=wscript.Arguments(a)    
     
next
'******************************************
'定義Excle物件、工作薄物件、工作表物件
'******************************************
dim oExcel,oWb,oSheet
  
set ws=WScript.createobject("wscript.shell")
Set oExcel=CreateObject("Excel.Application")
'開啟指定的工作簿
Set oWb=oExcel.Workbooks.Open(strPath)
'顯示開啟的Excel工作簿
oExcel.visible=true
'******************************************
'遍歷工作簿的所有工作表
'******************************************
for j= 1 to oWb.sheets.count
    set oSheet=oWb.Sheets(j)
    '選中並啟用工作表
    oSheet.Activate
    oSheet.Range("A1")="成功"
  
next
Excel遍歷所有工作簿中所有工作表執行宏
Sub test()
n = Worksheets.Count
For i = 1 To n
Worksheets(i).Activate
Macro1
Next
End Sub

Macro1是宏的名稱

使用VBS遍歷EXCEL
Dim xlApp,xlSheet,xlWorkBookDim iRowCount,iLoop,jLoop,jColumnCount,numAdd
Set xlApp=CreateObject("Excel.Application")
xlApp.Visible=True
Set xlWorkBook=xlApp.Workbooks.Open("C:\data.xls")
Set xlSheet=xlWorkBook.Sheets("Sheet1")
iRowCount=xlSheet.UsedRange.Rows.Count
jColumnCount=xlSheet.UsedRange.Columns.Count
For iLoop=1 To iRowCount
 For jLoop=1 To jColumnCount
 MsgBox(xlSheet.cells(iLoop,jLoop).value)
 Next
Next
 
xlWorkBook.Save
xlWorkBook.Close
xlApp.Quit
VBScript 編寫 自動Excel檔案內容到陣列並提示輸出

解壓到任意目錄,點選VBS檔案執行,程式自動讀取檔案所在目錄的Excel檔案到陣列中,並透過提示框逐個輸出,提示框1s自動關閉。

Dim oExcel,oWb,oSheet 
Set oExcel= CreateObject("Excel.Application") 
Set oWb = oExcel.Workbooks.Open(dir&"\DataReport.xls") 
Set oSheet = oWb.Sheets("HistoryData")      
 
Dim i
Dim a(150)
 
For i = 5 To 145 '145-5+1 = 141 
a(i-5) = oSheet.Range("B"&i).Value
print "data=",a(i-5)
next
 
Set oSheet = Nothing
 
oExcel.Workbooks.Close
 
 
oExcel.Quit '關閉excel.exe'
 
 
Function Dir()
 
Set WshShell = CreateObject("Wscript.Shell")
 
Dir = WshShell.CurrentDirectory
     
End Function
 
Function print (prompt,title)
Set WshShell = CreateObject("Wscript.Shell")
WshShell.Popup prompt &title,1,""
End Function

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2776438/,如需轉載,請註明出處,否則將追究法律責任。

相關文章