51Testing软件测试论坛

标题: 怎样得到datatable中某一特定列的行数呢? [打印本页]

作者: vaguely    时间: 2007-8-17 12:34
标题: 怎样得到datatable中某一特定列的行数呢?
比如
cat  dog  bear
--------------------
aa   dd    aa
bb  ee     bb
cc           cc
              dd
--------------------
如何得到global sheet中Cat的rowcount呢?Many thanks
作者: 风过无息    时间: 2007-8-17 13:32
DataTable.GetSheet("Action1").GetParameter("test").ValueByRow(4)

具体参考
http://www.51testing.com/?3528/action_viewspace_itemid_10595.html
作者: vaguely    时间: 2007-8-17 14:07
多谢
作者: vaguely    时间: 2007-8-17 14:10
不好意思。我的问题没问清楚。
我是想知道怎么知道CAT, DOG列的行数.
(Cat=3, Dog=2)

GetRowCount只能得到整个gloab sheet的最长的列数
作者: 梦醒十分    时间: 2007-8-17 14:21
楼主问的是某一特定列的行数,楼上给出的是某一特定列上某一行的值。

msgbox DataTable.GetSheet("Action1").GetRowCount ‘这个方法只能得出Localsheet的总行数与LZ要求还差一些。

没找到相应函数可用,只好动手写了:
i=1
Do while DataTable.GetSheet("Action1").GetParameter("cat").value<>""
i=i+1
DataTable.GetSheet("Action1").setcurrentrow(i)
Loop
msgbox i-1
作者: vaguely    时间: 2007-8-17 15:15
谢谢!我试过了。

还有请问,如何修改Global Sheet的列名呢?
原来是A, B, C, 可以修改为我想要的Cat, Dog, Beer么?谢谢
作者: 梦醒十分    时间: 2007-8-17 15:59
DataTable.LocalSheet.AddParameter "Cat", ""
DataTable.LocalSheet.AddParameter "Dog", ""
DataTable.LocalSheet.AddParameter "Beer", ""
作者: elly_digua    时间: 2007-8-18 20:52
路过,学习
作者: qianlilv    时间: 2007-8-18 21:40
真的很不错
学习多了
作者: liyayaliutao    时间: 2008-10-29 17:12
也可以这样写
i=1
Do While Datatable.GetSheet("MysheetID").GetParameter("MyParameter").ValueByRow(i)<>""
i=i+1
Loop

msgbox i-1
作者: wshyzhywx    时间: 2008-10-30 22:27
谢谢 又会一招  但是有了一个新问题
用VBS把这个写成一个function 怎么样给这个function设定参数呢  谁会么 教一下
Function getcount(列名)
a=1
Do while DataTable.GetSheet("Global").GetParameter("列名").value<> ""
        a=a+1
       DataTable.GetSheet("Global").SetCurrentRow(a)     
  wend
  Exit do
Loop
a=a-1
msgbox a
End Function
Call getcount(列名)
   如果可以设定参数的花 就可以只要写一个这个函数 以后随便用了  不必要每次取都写一次  但是我这个每次都报错 请问这么传参数应该怎么做呢?




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2