You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Power Apps集合中添加列统计每个项目的出现次数

在Power Apps中按顺序统计集合内项目的出现次数

实现步骤

假设你的SharePoint列表Product中存储项目的列名为Fruit,按以下步骤操作:

  1. 加载SharePoint数据到基础集合
    在应用的OnStart事件或按钮的OnSelect事件中执行,将SharePoint列表数据加载到临时集合:

    ClearCollect(colProducts, Product)
    
  2. 生成带出现次数的目标集合
    使用AddColumns结合CountRows和Filter,为每个条目添加“出现次数”列。利用SharePoint列表的ID字段(默认递增,保证顺序)统计当前条目是该项目的第几次出现:

    ClearCollect(colProductsWithCount, 
        AddColumns(
            colProducts, 
            "Number of Occurrences", 
            CountRows(Filter(colProducts, Fruit = ThisRecord.Fruit && ID <= ThisRecord.ID))
        )
    )
    
  3. 在界面中展示结果
    插入一个Gallery控件,将其数据源设置为colProductsWithCount,然后添加两个标签控件:

    • 第一个标签绑定ThisItem.Fruit,显示项目名称
    • 第二个标签绑定ThisItem.'Number of Occurrences',显示该项目的出现次数

自定义排序/过滤场景的适配

如果你的集合需要先进行排序或过滤操作,建议先为集合添加自定义索引列来保证顺序准确性:

  1. 生成带索引的过滤/排序集合:
    ClearCollect(colFilteredProducts, 
        AddColumns(
            Sort(Product, Created, Ascending), // 可替换为你的自定义排序规则
            "RowIndex", 
            Sequence(CountRows(Product))
        )
    )
    
  2. 基于带索引的集合生成计数集合:
    ClearCollect(colFilteredWithCount, 
        AddColumns(
            colFilteredProducts, 
            "Number of Occurrences", 
            CountRows(Filter(colFilteredProducts, Fruit = ThisRecord.Fruit && RowIndex <= ThisRecord.RowIndex))
        )
    )
    

内容的提问来源于stack exchange,提问作者Kendall Outlaw

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 11:22:10