词典操作的获取值列表是不是有问题

使用问题 · 571 次浏览
qamrmen 创建于 2022-11-13 13:06

先使用excel文件读写——批量提取数据(提取数据定义:data:[Sheet1]A1:G12)

得到的词典变量再进行词典操作——获取值列表

这时获取到的是一个"Sheet1"的字符串,而不是单元格内容

是bug吗,还是我使用的方法不对?

 

另外词典操作的获取值列表的输出按照更符合常理的思维应该是一个列表类型把?为何是一个文本类型呢

 

求解答


回复内容
CL 2022-11-13 14:29
#1

指定一个范围时,这个范围内的数据提取到一个DataTable类型对象中,保存在词典的一个键对应的值上。这时候值是一个DataTable对象。

如果要提取一个单元格,设定单元格的位置(而不是范围),这时候词典键对应的值是单元格的内容。


  • 支持单值表格形式的数据。表格数据时,指定所在区域。如[Sheet1]A1:D10,该区域的第一行应为标题行。表格数据将使用DataTable类型对象保存在词典的值中, 在使用时需强制转换一下。
qamrmen 回复 CL 2022-11-13 17:00 :

我遇到的现象是,第一步获取到的词典变量是多个单元格的数据,一切正常,第二步获取值列表却输出了一个‘Sheet1’的字符串,别的什么都没有。疑问在这里。

CL 回复 qamrmen 2022-11-13 17:05 :

词典获取值只能用于普通文本值。 其他类型,要懂一些c#,然后在表达式里转换成原始类型以后做处理。

其它类型,通常会调用对象的ToString()方法,可能会得到对象的名称之类并不是想要的结果。

CL 最后更新于 2022-11-13 17:08
CL 回复 qamrmen 2022-11-13 17:10 :

对于规范的工作表(第一行为标题行),也可以用表格变量,使用表格操作提取内容,然后再输出为csv格式。

回复主贴