51Testing软件测试论坛

标题: 怎样获取datatable中的列名 [打印本页]

作者: puccaguo    时间: 2008-4-14 09:30
标题: 怎样获取datatable中的列名
我们在datatable中获取里面的内容,就用DataTable.RawValue("列名", dtGlobalSheet)。或者用DataTable.RawValue(1, dtGlobalSheet),这个是获取第一列的值。但是我现在是想得到第一列的列名,应该怎么办?是想获取列名,而不是这一列某一行的数据。
作者: xiaonan    时间: 2008-4-14 10:18
列名 本身是你自己事先设置的
作者: puccaguo    时间: 2008-4-14 13:51
我知道是我事先设置的,我的意思是设置完了之后,我想再获取,怎么获取呢?
作者: puccaguo    时间: 2008-4-14 13:59
我就这样说吧:
用QTP录制一张单据,需要输入编码和名称,其中编码是必须输入的。我需要用QTP录制之后判断,编码没有输入时点保存,应该提示我要输入编码。现在datatable里面有两列。一列是“编码”,一列是“名称”。一共两行,第一行“编码”列没有值,第二行“名称”列没有值。我现在需要将循环两次。目前我只能这样写语句:
dim code
code = DataTable.RawValue("编码", dtGlobalSheet)
if code = ""  '判断“编码”列中是否有值,如果没有值则进入下面的操作
  ......
我不想这样写,我想让程序自己获取列名,然后如果列名=“编码”,我再去写下面的if语句。

[ 本帖最后由 puccaguo 于 2008-4-14 14:00 编辑 ]
作者: imlele    时间: 2008-4-14 14:16
没有明白...

让程序取列名?代替那段代码?
作者: puccaguo    时间: 2008-4-14 14:32
不是,就是
code = DataTable.RawValue("编码", dtGlobalSheet)
这句话里面的“编码”是列名,我想动态获取,而不是我写“编码”,它就获取“编码”这一列的值。
作者: puccaguo    时间: 2008-4-14 14:36
就这样说吧。程序运行到了第二行。我获取datatable中的第一列的第二行的值,用DataTable.RawValue(1,dtGlobalSheet)就可以得到,但是我现在就是要知道,第一列的列名是什么。我知道是列名是我之前设置过了的,但是我在运行的时候想知道,有没有办法啊?
作者: zhou840401    时间: 2008-4-14 15:01
不知道你在运行之中想知道第1列或是第2列是列是什么,有什么用途,也许其它的方式可以解决.
作者: sqgrl    时间: 2008-4-14 16:31
DataTable.GetSheet(strSheetName).GetParameter(1).Name
作者: puccaguo    时间: 2008-4-15 11:49
谢谢,我试试看哦
作者: puccaguo    时间: 2008-4-15 12:01
可以了,谢谢sqgrl
作者: puccaguo    时间: 2008-4-15 14:07
那怎么样获取sheet中的一共有多少列啊?
作者: yqx    时间: 2008-4-15 16:14
paramcount = DataTable.GetSheet("MySheet").GetParameterCount
作者: puccaguo    时间: 2008-4-18 10:04
恩,好,都查到了,。谢谢哦




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