51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2581|回复: 9
打印 上一主题 下一主题

[讨论] 导入 导出EXCEL

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-9-19 09:21:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有谁知道,怎么样能把EXCEL表中数据导入和导出呢,用代码写的那种,我在网上找了点,可是运行不了,我看不懂了,先放上来,如果谁看懂了,帮忙解释下 
如何将脚本运行完的结果存入EXCEL
我想将运行完的结果,比如"PASS"或是“FAILED”写入到EXCEL中,如何写代码?
我贴一段QTPxls文件的读写代码吧。

Set xlApp = CreateObject("Excel.Application")
xlApp.application.visible=true
Set xlbook=xlApp.WorkBooks.Open("d:\nonodata.xls")
Set xlSheet = xlBook.Worksheets("Sheet1")
systemutil.Run "C:\windows\system32\calc.exe"

For i=2 to 5
        input1= xlSheet.cells(i,2).value
        expression = xlSheet.cells(i,3).value
        input2= xlSheet.cells(i,4).value
        expresult = xlsheet.cells(i,5).value
        
Window("
计算器").Activate
Window("
计算器").Type cstr(input1)
Window("
计算器").WinButton("operator").SetTOProperty "text",cstr(expression)   我走到这步就运行不下去了,提示operator 找不到,怎么解决
Window("
计算器").WinButton("operator").Click
Window("
计算器").WinEdit("Edit").Type cstr(input2)
Window("
计算器").WinButton("=").Click

outvalue = cstr(window("
计算器").WinEdit("Edit").GetROProperty ("text"))
Window("
计算器").WinButton("C").Click
actresult = replace(outvalue,".","")
If trim(cstr(expresult)) <> trim(cstr(actresult)) Then
        reporter.ReportEvent 1,"
测试结果","失败"
        xlsheet.cells(i,7) = "NOK"
        xlsheet.cells(i,7).font.color = vbred
else
        reporter.ReportEvent 0,"
测试结果","成功"
        xlsheet.cells(i,7) = "OK"
        xlsheet.cells(i,7).font.color = vbgreen
End If
xlSheet.cells(i,6) = actresult
xlSheet.cells(i,6).font.color = vbblue
Next
Window("
计算器").Close

xlbook.save
xlApp.DisplayAlerts = False
xlbook.close(true)
xlApp.quit
Set excel=nothing

p.s.:xls
文件内容如下:
caseID        input1        expression        input2        expresult        actresult        conclusion
1        4        +        2        6               
2        3        -        2        1               
3        3        *        5        15               
4        6        /        2        20
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    2#
    发表于 2007-9-19 09:33:59 | 只看该作者
    你说的“我走到这步就运行不下去了,提示operator 找不到“,很有可能是对象库里面没有operator 。你到对象库里面去自己看看。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    3#
    发表于 2007-9-19 09:47:06 | 只看该作者

    帮你简单分析一下各段代码的含义

    创建Excel表格
    Set xlApp = CreateObject("Excel.Application")
    xlApp.application.visible=true

    打开d:\nonodata.xls 的Sheet1
    Set xlbook=xlApp.WorkBooks.Open("d:\nonodata.xls")
    Set xlSheet = xlBook.Worksheets("Sheet1")

    运行 calc.exe程序
    systemutil.Run "C:\windows\system32\calc.exe"
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2007-9-19 09:48:20 | 只看该作者
    input1= xlSheet.cells(i,2).value
            expression = xlSheet.cells(i,3).value
            input2= xlSheet.cells(i,4).value
            expresult = xlsheet.cells(i,5).value

    这段代码的作用是从Excel中读取输入值和期望的输出结果。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    5#
    发表于 2007-9-19 09:54:12 | 只看该作者
    Window("计算器").Activate
    Window("计算器").Type cstr(input1)
    Window("计算器").WinButton("operator").SetTOProperty "text",cstr(expression) 
    Window("计算器").WinButton("operator").Click
    Window("计算器").WinEdit("Edit").Type cstr(input2)
    Window("计算器").WinButton("=").Click

    这段代码的作用是 输入两个数值,然后点击“=”
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2007-9-19 09:55:47 | 只看该作者
    outvalue = cstr(window("计算器").WinEdit("Edit").GetROProperty ("text"))
    Window("计算器").WinButton("C").Click
    actresult = replace(outvalue,".","")
    If trim(cstr(expresult)) <> trim(cstr(actresult)) Then
            reporter.ReportEvent 1,"测试结果","失败"
            xlsheet.cells(i,7) = "NOK"
            xlsheet.cells(i,7).font.color = vbred
    else
            reporter.ReportEvent 0,"测试结果","成功"
            xlsheet.cells(i,7) = "OK"
            xlsheet.cells(i,7).font.color = vbgreen
    End If
    xlSheet.cells(i,6) = actresult
    xlSheet.cells(i,6).font.color = vbblue
    Next
    Window("计算器").Close

    这段代码的作用是验证运行结果进行验证,并把验证的结果写到 Excel里去
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    7#
    发表于 2007-9-19 09:56:36 | 只看该作者
    最后一段的作用很简单,就是保存验证的结果,并退出
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    8#
    发表于 2007-9-19 09:59:09 | 只看该作者
    关于对 EXCEL的操作的讨论,论坛上有不少这样的帖子,楼主可以去搜索一下
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
     楼主| 发表于 2007-9-19 10:38:50 | 只看该作者
    哦,先谢谢啦,我在去看看
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2007-9-19 11:52:47 | 只看该作者
    QTP有一个DEMO就是专门操作EXCEL的,LZ可以看看
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-5-12 17:58 , Processed in 0.077159 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表