cyrusmm 发表于 2008-1-29 14:53:30

谢谢楼主啊!
真的是好东西!

zycdele 发表于 2008-1-29 15:25:58

谢谢!学习中

lvxdoo 发表于 2008-1-29 17:16:58

要顶的,很不错,谢谢lz:handshake :loveliness:

zgp_roby 发表于 2008-1-29 17:34:47

类似的函数库也写了很多。LZ奉献的先收下了,哪一天正好调用,就节约俺们的工夫了。
同LS,LSS....对LZ表示感谢!:lol

lf0026 发表于 2008-1-29 18:03:01

楼主啊 啥话都不说了 以后记得回来瞄瞄就好
祝福你

mickey-311 发表于 2008-1-29 18:12:41

一个苹果换一个苹果,每个人只有一个苹果
一份知识换一份知识,每个人将有两份知识

不错,非常感谢搂主,希望大家在这里可以更好的分享测试精华,谢谢!

tdj602 发表于 2008-1-29 19:42:58

谢谢

谢谢 以后常回家看看,

zhan_gqian 发表于 2008-1-29 23:47:06

LZ的无私值得我们所有人学习!
希望能在这里看到越来越多测试的知识和精华,让我们团结一致,为测试事业贡献自己的力量!

eightants 发表于 2008-1-30 04:11:39

Thanks a lot!

BenjaminCheung 发表于 2008-1-30 14:00:33

谢谢楼主。51测试网请你当版主真好。

karolin 发表于 2008-1-30 23:52:51

真心感谢楼主1

fyf1871 发表于 2008-1-31 09:52:22

支持开源~~支持免费!!!

kanebluba 发表于 2008-1-31 10:10:01

Dim MyValue As Integer, temp As Integer, temp1 As Integer, toNum As Integer, fromNum As Integer, step As Integer, sign As Integer

Private Sub Form_Activate()
fromNum = InputBox("输入起始数")
         
            toNum = InputBox("输入结束数")
                  step = InputBox("输入间隔")
            
            
            If (fromNum < 0 Or toNum < 0) Then
               MsgBox ("不能小于0")
               sign = 1
            Else
            
               temp1 = toNum - fromNum
               If (temp1 < 0) Then
               MsgBox ("起始数小于结束数")
               sign = 1
               Else
               If (temp1 <= 10) Then
               
                     Randomize
                      MyValue = Int(((toNum - fromNum) * Rnd) + (fromNum))
                Print MyValue
                        sign = 1
                     Else
                     
               
               
               
                     If (temp1 >= 10) Then
               
               
               temp = (toNum - fromNum) / step - 1
               End If
               End If
               End If
            End If
            
            
               For i = 1 To temp
      Randomize
      MyValue = Int(step * Rnd) + fromNum
                fromNum = fromNum + 8
                   Print MyValue
               
                Next i
               
               '补最后一次
               If (sign = 0) Then
                Randomize
      MyValue = Int(((toNum - fromNum) * Rnd) + (fromNum))
          Print MyValue
   
            End If
            
End Sub


是LZ的同学,看到他写了,帮他再完善一下吧,这个是随机函数的另一个版本.
它可以做到根据你想要随机的范围和密度进行调节,有兴趣的人可以自己试试.

sunqiang1024 发表于 2008-1-31 10:11:07

谢谢楼主的无私奉献啊,楼主的帖子给使用QTP的同僚一个莫大的帮助啊,向你致敬!:victory:

yuandjing 发表于 2008-1-31 10:40:25

原帖由 kanebluba 于 2008-1-31 10:10 发表 http://bbs.51testing.com/images/common/back.gif
Dim MyValue As Integer, temp As Integer, temp1 As Integer, toNum As Integer, fromNum As Integer, step As Integer, sign As Integer

Private Sub Form_Activate()
fromNum = InputBox("输入起始数")
   ...

呵呵,小朱来了我顶你一下
估计你以前是用标准VB或者VBA的吧,QTP用VBS的,所以代码调不通,我改了一下,但是没测试过你的代码,不知道功能是不是实现,以下你的代码可以调的通:

'Dim MyValue As Integer, temp As Integer, temp1 As Integer, toNum As Integer, fromNum As Integer, step As Integer, sign As Integer

Private Sub Form_Activate()
fromNum = InputBox("输入起始数")
         
            toNum = InputBox("输入结束数")
                  step = InputBox("输入间隔")
            
            
            If (fromNum < 0 Or toNum < 0) Then
               MsgBox ("不能小于0")
               sign = 1
            Else
            
               temp1 = toNum - fromNum
               If (temp1 < 0) Then
               MsgBox ("起始数小于结束数")
               sign = 1
               Else
               If (temp1 <= 10) Then
               
                     Randomize
                      MyValue = Int(((toNum - fromNum) * Rnd) + (fromNum))
                Print MyValue
                        sign = 1
                     Else
                     
               
               
               
                     If (temp1 >= 10) Then
               
               
               temp = (toNum - fromNum) / step - 1
               End If
               End If
               End If
            End If
            
            
               For i = 1 To temp
      Randomize
      MyValue = Int(step * Rnd) + fromNum
                fromNum = fromNum + 8
                   Print MyValue
               
                Next
               
               '补最后一次
               If (sign = 0) Then
                Randomize
      MyValue = Int(((toNum - fromNum) * Rnd) + (fromNum))
          Print MyValue
   
            End If
            
End Sub

另外这样的话会更好:
1.定义变量最好在函数体里面的
2.代码要保持队形(锯齿形结构)
3.多余的空行最好删除,代码要容易阅读,可以参考一下林锐的《高质量C++编程》,我还是很推崇的,是关于代码规范的书,加油 :)

[ 本帖最后由 yuandjing 于 2008-2-1 12:15 编辑 ]

shiyi1022 发表于 2008-1-31 10:49:18

51最需要的就是这样的人才:handshake :handshake

mystufo 发表于 2008-1-31 11:37:58

多谢楼主能无私的奉献

hehemeimei 发表于 2008-1-31 14:09:54

Thank you Yuanding , 我现在也不用QTP了,收藏了,学习以下。

kanebluba 发表于 2008-1-31 14:41:03

LZ你没测试过?我是测试过放出来的,基本没什么问题.
大家有新的想法也可以贴出来的

daneil2007 发表于 2008-1-31 15:19:30

楼主走好 :handshake谢谢了
页: 1 [2] 3 4 5 6 7 8 9 10
查看完整版本: 告别QTP板块,临走吐点心血送给大家(知识是共享和堆积的,不是卖钱的,完全免费)