Vbscript生成Excel报表的常用操作总结

使用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) ‘文件另存为
(0)

相关推荐

  • Vbscript生成Excel报表的常用操作总结

    使用QTP自动化测试结束后,经常需要将测试结果写入Excel中,这里就把一些常用对Excel操作的方法进行归纳.整理,方便使用时查阅.支持Office Excel 2003版本,不支持2007版本. Vbscript代码 On Error Resume Next Dim FileName, SheetName, Text, ExcelApp, ExcelBook, ExcelSheet FileName = "D:/Book1.xls" SheetName = "新建表&qu

  • java生成excel报表文件示例

    此次简单的操作将数据从数据库导出生成excel报表以及将excel数据导入数据库 首先建立数据库的连接池: package jdbc; import java.io.FileInputStream; import java.sql.Connection; import java.util.Properties; import org.apache.commons.dbcp.BasicDataSource; public class BaseDAO { private static BasicDa

  • Python实现导出数据生成excel报表的方法示例

    本文实例讲述了Python实现导出数据生成excel报表的方法.分享给大家供大家参考,具体如下: #_*_coding:utf-8_*_ import MySQLdb import xlwt from datetime import datetime def get_data(sql): # 创建数据库连接. conn = MySQLdb.connect(host='127.0.0.1',user='root'\ ,passwd='123456',db='test',port=3306,char

  • Python xlrd/xlwt 创建excel文件及常用操作

    一.创建excel代码 备注:封装好了(可直接调用) """ -*- coding:utf-8 -*- @Time :2020/8/20 21:02 @Author :Jarvis @File :jar_excel_util.py @Version:1.0 """ from typing import List import xlwt class JarExcelUtil: def __init__(self, header_list: List

  • Python和Excel的完美结合的常用操作案例汇总

    目录 前言 Python和Excel的交互 vlookup函数 绘图 柱状图 雷达图 前言 在以前,商业分析对应的英文单词是Business Analysis,大家用的分析工具是Excel,后来数据量大了,Excel应付不过来了(Excel最大支持行数为1048576行),人们开始转向python和R这样的分析工具了,这时候商业分析对应的单词是Business Analytics. 其实python和Excel的使用准则一样,都是[We don't repeat ourselves],都是尽可能

  • Java根据模板导出Excel报表并复制模板生成多个Sheet页

    因为最近用报表导出比较多,所有就提成了一个工具类,本工具类使用的场景为  根据提供的模板来导出Excel报表 并且可根据提供的模板Sheet页进行复制 从而实现多个Sheet页的需求, 使用本工具类时,如果需求是每个Sheet页中的数据都不一致,但是表格样式和模板都一样 那么只需要在实际情况中根据 sql 来查询要添加的数据源 (只需更改数据源即可) 采用的技术为 POI 导出,因为类的缘故,目前只支持2003版本的Excel. 使用前请先下载相应jar包! 后期有时间的话会进行进一步完善,初次

  • django框架基于模板 生成 excel(xls) 文件操作示例

    本文实例讲述了django框架基于模板 生成 excel(xls) 文件操作.分享给大家供大家参考,具体如下: 生成Excel 文件,很多人会采用一些开源的库来实现,比如python 自带 csv 库可以生成类似Excel  一样的东西,当然还有一些专门处理 excel 的库,我以前也有用过,比如这里: //www.jb51.net/article/163408.htm 我介绍过用第三方的库来实现.但事实上还有另外一种办法,采用模板的方法. 虽然标题写的是利用 django 模板来实现,其实并一

  • python生成每日报表数据(Excel)并邮件发送的实例

    逻辑比较简单 ,直接上代码 定时发送直接使用了win服务器的定时任务来定时执行脚本 #coding:utf-8 from __future__ import division import pymssql,sys,datetime,xlwt import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from email.header import Heade

  • 详解pytest+Allure搭建方法以及生成报告常用操作

    目录 一.Allure搭建 1.下载Allure安装包 2.安装allure-pytest库 3.配置allure环境变量 4.检验allure安装成功 二.allure生成报告代码 1.allure指定用例严重等级: 2.allure指定标记的测试用例执行 3.生成报告代码 一.Allure搭建 1.下载Allure安装包 链接:https://github.com/allure-framework/allure2/releases 2.安装allure-pytest库 cmd命令行输入命令:

  • 14个用Python实现的Excel常用操作总结

    目录 前言 一.关联公式:Vlookup 二.数据透视表 三.对比两列差异 四.去除重复值 五.缺失值处理 六.多条件筛选 七. 模糊筛选数据 八.分类汇总 九.条件计算 十.删除数据间的空格 十一.数据分列 十二.异常值替换 十三.分组 十四.根据业务逻辑定义标签 前言 自从学了Python后就逼迫自己不用Excel,所有操作用Python实现.目的是巩固Python,与增强数据处理能力. 这也是我写这篇文章的初衷.废话不说了,直接进入正题. 数据是网上找到的销售数据,长这样: 一.关联公式:

随机推荐