eyAndrew 发表于 2024-3-26 11:01:28

v16 vue3 table设置列公式不生效

本帖最后由 Richard.Huang 于 2024-3-28 11:03 编辑

产品:SpreadJS
版本:V16
调研编号:SJS-23615


如图所示,我再初始化table时,设置列公式,公式内容为: '=IF(ISERROR([@dataSetName]), "0", "1")',
dataSetName,为column的dataField, 设置为 name,也试过也不生效, 在页面上看,应该没设置成功

需求:dataSetName这一列,存的 引用位置, 例(=sheet1!A1),另外一列设置上面的列公式, 获取table数据时,getArray() 根据上面的公式,来返回当前判断的列,数据是否正确。

Richard.Huang 发表于 2024-3-26 11:25:42

您好,列公式中参数如果是表格的某列,您应该传入表格列的name且不加@符号,如下所示:

eyAndrew 发表于 2024-3-26 11:38:54

=IF(ISERROR([数据集名称]), "0", "1") 改成这样也不生效, 我没用bindingpath

Richard.Huang 发表于 2024-3-26 16:59:25

eyAndrew 发表于 2024-3-26 11:38
=IF(ISERROR([数据集名称]), "0", "1") 改成这样也不生效, 我没用bindingpath
您好,我的理解是,在ISERROR函数期望接收到的是一个单值,而不是一个区域,在Excel的表格中会出现溢出,因此请问您的具体需求是什么,需要实现一个什么样的效果呢

eyAndrew 发表于 2024-3-26 17:57:17


是单值,如图,F列存的是公式,我想设置 K列的列公式,自动判断F列的数据,是否错误,错误返回0,正确返回1,怎么设置?

Richard.Huang 发表于 2024-3-27 09:29:26

为K列的单元格设置公式,我想您可以使用这个API:https://demo.grapecity.com.cn/spreadjs/help/api/classes/GC.Spread.Sheets.Tables.Table#setcolumndataformula

eyAndrew 发表于 2024-3-27 10:22:18


这个也试过了,不行。dataFiled name 加@符号,都试了,都不生效,这是我初始化table的逻辑,单元格赋值的时候,也不会处理这一列。

Richard.Huang 发表于 2024-3-27 12:32:26

您好,我这边测试是没有问题的,请问您能否提供一份可供我们复现的demo,或者在我附件中测试使用的demo上进行修改,只要让我复现您的问题即可

eyAndrew 发表于 2024-3-27 14:34:55

附件已上传,这样设置是不生效的

Richard.Huang 发表于 2024-3-27 17:18:52

eyAndrew 发表于 2024-3-27 14:34
附件已上传,这样设置是不生效的

您好,您传入的参数应该是name而非dataField:

效果如下:

页: [1] 2
查看完整版本: v16 vue3 table设置列公式不生效