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

如何用函数实现可变行内非零货物重量与对应等级成本的匹配?

解决方案

假设你的货物重量数据在一行(示例为A1:G1),成本数据在一列(示例为I1:I3),以下是实现匹配逻辑的函数方案(适用于Excel 365/2021及以上版本,支持动态数组):

1. 提取并升序排列非零重量

在任意空白单元格输入以下公式,会自动返回所有非零重量的升序数组:

=SORT(FILTER(A1:G1, A1:G1 <> 0), 1, 1)

示例中会返回 {6, 8, 9, 9},对应从最小到最大的非零重量。

2. 关联排序后的成本与重量

若要直接将升序成本和对应升序非零重量配对展示,使用以下公式生成两列结果:

=HSTACK(SORT(I1:I3, 1, 1), SORT(FILTER(A1:G1, A1:G1 <> 0), 1, 1))

执行后会得到:

升序成本对应重量
3595.116
4437.088
4939.349

3. 单独在重量行下方逐个返回匹配值

如果要在重量行的下一行(比如A2:G2)依次对应最小、中等、最大成本的重量,在A2输入公式后下拉:

=SMALL(FILTER($A$1:$G$1, $A$1:$G$1 <> 0), ROWS($A$2:A2))
  • A2返回最小非零重量(对应最小成本)
  • B2返回次小非零重量(对应中等成本)
  • 以此类推,直到覆盖所有成本数量

容错优化

若成本数量多于非零重量数量,公式会返回#NUM!错误,可添加容错逻辑返回空值:

=IFERROR(SMALL(FILTER($A$1:$G$1, $A$1:$G$1 <> 0), ROWS($A$2:A2)), "")

所有公式会随原始数据动态更新,无需手动调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 09:05:21