正文

VBS遍历Excel工作表的实现代码(vba遍历)这都可以

文章摘要

这篇文章介绍了使用VBS脚本(Visual Basic Scripting)自动化处理Excel文件的操作方法。主要内容包括: 1. **拖拽文件与获取路径**:通过拖拽文件来获取其路径,并提示用户操作。 2. **创建Excel对象**:使用VBS创建Excel应用对象(如Excel.Application),并打开指定工作簿。 3. **遍历工作表**:遍历Excel工作簿中的所有工作表,并对每个工作表进行操作(如激活并执行宏)。 4. **处理Excel内容**:将Excel工作表中的数据提取到数组中,并通过提示框逐个显示。 5. **打包下载代码**:文章末尾提到为方便学习提供了代码打包下载,下载地址在文末。 总结而言,文章重点展示了如何利用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

为了方便学习特将代码打包提供下载 下载地址