Vbscript生成Excel报表的常用操作总结
程序员文章站
2024-01-02 17:53:40
使用qtp自动化测试结束后,经常需要将测试结果写入excel中,这里就把一些常用对excel操作的方法进行归纳、整理,方便使用时查阅。支持office excel 2003...
使用qtp自动化测试结束后,经常需要将测试结果写入excel中,这里就把一些常用对excel操作的方法进行归纳、整理,方便使用时查阅。支持office excel 2003版本,不支持2007版本。
vbscript代码
on error resume next dim filename, sheetname, text, excelapp, excelbook, excelsheet filename = "d:/book1.xls" sheetname = "新建表" text = "hello qtp ! 你好, quicktestprofessional !" set excelapp = createobject("excel.application") set excelbook= excelapp.workbooks.open(filename) set excelsheet = excelbook.sheets.add '插入工作表 'set excelsheet = excelbook.sheets.item(sheetname) '获得指定工作表 ' *************** 对数据表的操作 *************** for i=1 to excelbook.sheets.count if excelbook.sheets(i).name=sheetname then excelapp.displayalerts=false excelbook.sheets(i).delete '删除工作表 excelapp.displayalerts=true exit for end if next excelsheet.name = sheetname '重命名工作表 ' *************** 对文字的操作 *************** excelsheet.cells(1,2) = text excelsheet.range("b2","b20").value = text excelsheet.cells(1,2).font.name = "verdana" '设置字体 excelsheet.cells(1,2).font.size = 25 '设置字号 excelsheet.cells(1,2).font.color = rgb(0, 0, 255) '设置字体颜色 excelsheet.cells(2,2).font.bold = true '文字加粗 excelsheet.cells(3,2).font.italic = true '文字倾斜 excelsheet.cells(4,2).font.underline = true '文字加下划线 excelsheet.cells(5,2).font.strikethrough = true '文字加删除线 excelsheet.cells(6,2).characters(2, 2).font.superscript = true '设定文字上标 excelsheet.cells(7,2).characters(2, 2).font.subscript = true '设定文字下标 ' *************** 对单元格的操作 *************** excelsheet.columns("b").columnwidth = 40 '设置列宽 'excelsheet.columns("b").autofit '自动调整列宽 excelsheet.range("b11").rowheight=40 '设置行高 'excelsheet.rows(11).rows.autofit '自动调整行高 excelsheet.range("b8","d8").merge '合并单元格,水平方向 excelsheet.range("b18","b19").merge '合并单元格,垂直方向 excelsheet.range("b8","d8").borders.color = rgb(0,255,0) '设定单元格边框颜色 excelsheet.range("b12").interior.color = rgb(255,0,0) '设置单元格背景色 excelsheet.cells(9,2).wraptext = true '自动换行 excelsheet.cells(10,2).horizontalalignment = 3 '设置水平对齐,1常规,2靠左,3居中,4靠右 ' 5填充,6两端对齐,7跨列居中,8分散对齐 excelsheet.cells(11,2).verticalalignment = 1 '设置垂直对齐,1靠上,2居中,3靠下 ' 4两端对齐,5分散对齐 excelsheet.range("b14").borders(1).linestyle=1 '设置左边框样式 excelsheet.range("b14").borders(2).linestyle=2 '设置右边框样式 excelsheet.range("b14").borders(3).linestyle=3 '设置上边框样式 excelsheet.range("b14").borders(4).linestyle=4 '设置下边框样式 excelsheet.range("b15").clearcontents '清除单元格内容 excelsheet.range("b16").formula="=1+10" '设置单元格公式 excelsheet.range("b17").addcomment("hello" & vblf & "qtp") '插入批注 excelsheet.range("b17").comment.visible=true '显示批注 'excelsheet.range("b17").clearcomments '清除批注,与删除批注效果相同 'excelsheet.range("b17").comment.delete '删除批注,与清除批注效果相同 'excelsheet.saveas("d:\book2.xls") '另存为 excelbook.save excelbook.close excelapp.quit set excelbook = nothing set excelapp = nothing systemutil.closeprocessbyname "excel.exe" '如果仍有excel.exe进程,可使用这句关闭进程 if err.number>0 then msgbox err.description end if on error goto 0
补充:
excelapp.displayalerts = false ‘关闭兼容性检查 excelbook = excelapp.workbooks.add ‘新建excel excelsheet = excelbook.activesheet ‘激活第一个表 excelsheet.columns(“a:e”).autofit() ‘设置a到e列自动调整列宽 excelbook.saveas(“d:\book2.xls”,fileformat:=excel.xlfileformat.xladdin) ‘文件另存为