找回密码
 加入
搜索
查看: 4517|回复: 5

[系统综合] 【已解决】代码for ...to...重复循环无法自动结束退出。

  [复制链接]
发表于 2011-3-9 13:47:48 | 显示全部楼层 |阅读模式
本帖最后由 .個朲綉√ 于 2011-3-9 16:20 编辑

调用excel数据打印,比如我调用Excel从第3行打印到第5行,打印到第5行后,又开始打印第3行了,一直这样循环,不能自动退出,求解啊。。。


#cs
标题:ZebraDesigner
快捷键:CRTL + P

打印标题:打印
第一输入控件:Edit3
第二输入控件:Edit4
打印按钮:Button5
思路:调用Excel 数据,激活打印软件窗口,按CTRL + P 输入数据,点击打印,再调用数据...(循环)
#ce
#include <Excel.au3>

Local $Config_File = @ScriptDir & "\Config.ini"
Local $Xls_File = IniRead($Config_File, "System", "Xls路径", "")
Local $Num_N = Number(IniRead($Config_File, "System", "号码列", ""));号码列
Local $Uim_N = Number(IniRead($Config_File, "System", "串号列", ""));密码列
Local $Read_N = Number(IniRead($Config_File, "System", "读初始行", "3"));读初始行
Local $Shop_N = Number(IniRead($Config_File, "System", "读号结束行", "5"));读号结束行
;$Var = 1
Dim $Num, $Uim

GUISetState(@SW_SHOW)
$oExcel = _ExcelBookOpen($Xls_File, 1)
If $oExcel = 0 Then
        MsgBox(64, "提示:", $Xls_File & "打开失败.")
        Exit
EndIf

While 1
                        For $i = $Read_N To $Shop_N
                                _Get_Num($i);读取号码
                                If _Print($Num, $Uim, $i) = 1 Then ExitLoop 
                Next
;        EndSwitch
WEnd


Func _Get_Num($Var);读取号码,参数为第几行 前提要先获取表格对象
        $Num = _ExcelReadCell($oExcel, $Var, $Num_N)
        $Uim = _ExcelReadCell($oExcel, $Var, $Uim_N)
EndFunc   ;==>_Get_Num


Func _Print($Num, $Uim, $i)
        Dim $Log_txt
        If $Num = "0" Or $Uim = "0" Or $Num = "" Or $Uim = "" Then;判断账号是否读取正常,不正常跳出循环
                Return 1
        EndIf        
        WinWait("ZebraDesigner","")
        WinActivate("ZebraDesigner","")
        Send("^p")
        WinWait("打印","")
        WinActivate("打印","")
        ControlSetText("打印","","Edit3",$Num)
        ControlSetText("打印","","Edit4",$Uim)
        ControlClick("打印","","Button5")

EndFunc   ;==>_Login
发表于 2011-3-9 13:51:34 | 显示全部楼层
If _Print($Num, $Uim, $i) = 1 Then ExitLoop 退出了for循环,但是while没退吧?
 楼主| 发表于 2011-3-9 14:09:51 | 显示全部楼层
回复 2# 骗子


    WEnd
这个不是退了吗??
发表于 2011-3-9 14:13:52 | 显示全部楼层
回复  骗子


    WEnd
这个不是退了吗??
.個朲綉√ 发表于 2011-3-9 14:09


whlie 1
wend
是一组,意思好像是是无限循环之间的内容,去帮助文件中找下while就知道了

评分

参与人数 1金钱 +30 贡献 +5 收起 理由
.個朲綉√ + 30 + 5 谢谢。

查看全部评分

发表于 2011-3-9 15:12:45 | 显示全部楼层

whlie 1
wend
去掉就行了吧

评分

参与人数 1金钱 +30 贡献 +5 收起 理由
.個朲綉√ + 30 + 5 谢谢啦。

查看全部评分

 楼主| 发表于 2011-3-9 16:19:44 | 显示全部楼层
回复 5# xyold1


    Good   看来我是画蛇添足了。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-10-2 12:28 , Processed in 0.083698 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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