我正在尝试计算用户添加的行数,并且“EntityNameCombo”的值与Sharepoint“数据收集”中“实体名称”的值匹配。 而 EntityNameCombo 是一个组合框,值为 Choices([@'Data Collection'].'Entity Name'),而 'Entity Name' 是共享点中的 Choice 列。
这是我正在尝试的代码:
CountRows(Filter('Data Collection','Modified By'.Email=User().Email &&
'Entity Name'.Value = EntityNameCombo.SelectedItems))
但是,它无法处理错误:不兼容的比较类型。这些类型无法比较:Table,Table。
非常感谢您的帮助。
从错误信息中可以看出,表中的值不能直接进行比较。组合框的 SelectedItems 属性是一个包含所有已选择值的表,SharePoint 中每条记录的“实体名称”属性也是一个包含记录选项的表。
我们可以通过将表格转换成可以比较的东西来解决这个问题。例如,通过连接选项中的值,类似于下面的表达式:
CountRows(
Filter(
'Data Collection',
'Modified By'.Email=User().Email &&
Concat(Sort('Entity Name', Value), Value, ",") = Concat(Sort(EntityNameCombo.SelectedItems, Value), Value, ",")
)
)
还有其他选择,但我认为这是最简单的。请注意,不能保证 SharePoint 或组合框中的选择顺序已排序,这就是表达式在连接值之前首先对值进行排序的原因。