Power Query拼接自定义列如何按[NombreCliente]字段正确升序排序
你之前的写法报错是因为Order.Ascending是Power Query排序函数的枚举参数,本身属于数值类型,不能直接和文本字段拼接,也无法通过写在自定义列公式里实现排序效果,才会触发「无法对数值类型应用字段访问」的错误。
正确实现方案
步骤1:生成正确的自定义拼接列
自定义列仅负责生成拼接文本,不要加入排序逻辑,公式使用你最初的正确写法即可:
= [IdCliente] & " - " & [NombreCliente]
步骤2:调整排序逻辑实现目标效果
分两种使用场景选择对应操作:
场景1:仅需要加载到Excel工作表的表格按要求排序
- 完成自定义列生成后,在Power Query界面选中
NombreCliente列,点击升序排序 - 查看右侧「应用的步骤」面板,把刚才的排序步骤拖拽到所有步骤的最末尾,确保排序是查询执行的最后一步(你之前排序不生效大概率是排序步骤在生成自定义列之前,后续操作重置了行顺序)
- 点击「关闭并上载」,加载到Excel的表格就会按
NombreCliente的字母顺序展示,不会默认按IdCliente排序。
- 完成自定义列生成后,在Power Query界面选中
场景2:加载到数据模型,在透视表、切片器中使用该列时按要求排序
- 完成场景1的所有操作后,进入Power Pivot界面,打开对应数据表
- 选中你生成的拼接自定义列,在顶部菜单栏点击「按列排序」,选择排序依据为
NombreCliente列 - 保存设置后,所有用到该自定义列的透视表、切片器都会默认按
NombreCliente的字母顺序排序。
内容的提问来源于stack exchange,提问作者user15500092
相关产品推荐
相关产品推荐

