条件赋值

1. 概述

1.1 应用场景

某公司有一张合同签单表,想对合同订单的金额进行分类。将 50 万以下的归为小单,50~100 万的归为中单,100 万以上的归为大单。

如下图所示:

1.2 功能简介

条件赋值可替代 IF/IFS 函数,实现复杂条件,在可视化窗口中,通过简单的参数设置,即可实现多条件分组赋值的效果:

  • 支持普通条件、公式条件,支持同时添加多个不同类型的条件,灵活进行赋值;
  • 支持复制/粘贴条件,快速实现条件的复用;
  • 支持拖拽移动条件顺序,调整逻辑关系。

2. 示例

2.1 创建分析表

下载示例数据并上传到产品中,将示例数据添加到项目中,点击「创建分析表」,如下图所示:

2.2 条件赋值

1)在分析表中点击「+>新增字段」,添加一个「条件赋值」。如下图所示:

2)新增字段名为「订单规模」,设置第一个条件:合同金额<500000 的,归为小单。如下图所示:

3)点击「添加条件」增加一个条件,设置为:合同金额介于 500000-1000000 的,归为中单。剩下的是合同金额>1000000的单子,归为大单。如下图所示:

2.3 效果查看

可以看到分析表中新增了一列「订单规模」,将不同合同金额大小的订单进行了赋值,下一步可以统计不同订单规模的数量是多少。

3. 条件赋值界面介绍

3.1 添加多个条件

点击一次「添加条件」按钮,即添加一个条件。如需设置多个条件,请点击多次「添加条件」按钮。

3.2 切换条件

默认添加的条件为「普通条件」,如需使用公式来进行筛选,可以切换成「公式条件」。两种条件可以自定义组合,可根据实际业务场景需求选取。

3.3 按钮说明

1)在条件右侧有一些按钮,例如复制、删除等等。如下图所示:

2)点击「批量」即可进入批量模式,各按钮说明见下表:

复制/粘贴

如您需要复用一些复杂的条件,复制粘贴即可,无需重新设置

删除

如您不需要此条件了,可以删除条件

批量

进入批量模式,可以批量删除条件、批量复制条件等等

拖拽条件

条件是从上到下的顺序执行的,可以调整条件的位置顺序,以确保逻辑正确

合并为公式

可以将已有的条件转化为公式,在此基础上修改。详情参见本文 3.4 节

若全选所有条件(包含 else 条件),会将条件赋值步骤转化成公式步骤。

3.4 合并为公式

3.4.1 场景一

1)用户在设置条件时,需要结合多个条件判断一个赋值,例如需要将「合同金额<500000,且回款金额<300000」判断为小单。如下图所示:

2)可以先设置两个条件,再勾选将这两个条件「合并为公式」。如下图所示:

3)那么会将这两个条件自动转化为公式,在此基础上可继续修改。如下图所示:

4)那么就可以将两个条件转化成公式,再将上面两个条件删除即可。

3.4.2 场景二

用户在写公式条件时,有些条件不知道如何用公式表达,比如开头是、结尾是、包含等等。可以先配置普通条件,再使用「合并为公式」将其转换成公式条件,在此基础上进行修改。如下图所示:

3.5 注意事项

1)当普通条件包含以下情况时,不支持将「普通条件」一键转化为「公式条件」:

  • 配置使用了「最大的 N 个」、「最小的 N 个」
  • 配置使用了「动态时间」
  • 配置使用了「多值参数」

2)若您需要在公式中使用「动态时间」,请参照以下表格自行书写公式。如下图所示:

基础日期(起始)

=TODAY()

A(Y/Q/M/W/D)前/后

前,A为负数

后,A为正数

Y/Q/M/W/D 初

Y/Q/M/W/D 末

当天

YEARDELTA(基础日期,A)

DATE(YEAR(基础日期),"1","1")

DATE(YEAR(基础日期),"12","31")

/

MONTHDELTA(基础日期,A*3)

DATE(YEAR(基础日期),INT((MONTH(基础日期)-1)/3)*3+1,"1")

DATEDELTA(DATE(YEAR(基础日期),INT((MONTH(基础日期)-1)/3)*3+4,"1"),-1)

/

MONTHDELTA(基础日期,A)

DATE(YEAR(基础日期),MONTH(基础日期),"1")

DATEDELTA(DATE(YEAR(基础日期),MONTH(基础日期)+1,"1"),-1)

/

DATEDELTA(基础日期,A*7)

DATEDELTA(基础日期,1-IF(WEEKDAY(基础日期)=0,7,WEEKDAY(基础日期)))

DATEDELTA(基础日期,7-IF(WEEKDAY(基础日期)=0,7,WEEKDAY(基础日期)))

/

DATEDELTA(基础日期,A)

/

/

/

工作日

WORKDAY.CN(基础日期,A)

/

/

/

多个动态时间组合

按勾选的时间单位依次计算,从「TODAY()」开始,依次将「基础日期」替换为上一个单位计算结果。

若包含年/季/月/周的初/末设置,将初/末函数嵌套在最末。

若设置为 0 年/季/月/周/天/工作日或当天,对应单位不需要计算。

示例1:设置 2年前、2月前,月初

1)按单位依次计算

  • 1 年前:B1=YEARDELTA(TODAY(),-2)
  • 2 月前:B2=MONTHDELTA(B1,-2)
  • 月初:C=DATE(YEAR(B2),MONTH(B2),"1")

2)最终输出转换的动态日期公式=DATE(YEAR(MONTHDELTA(YEARDELTA(TODAY(),-2),-2)),MONTH(MONTHDELTA(YEARDELTA(TODAY(),-2),-2)),"1")

示例2:设置 0年前、1月前, 当天

1)按单位依次计算

  • 0 年前:不计算
  • 1 月前:B=MONTHDELTA(TODAY(),-1,)
  • 当天:不计算

2)最终输出转换的动态日期公式=MONTHDELTA(TODAY(),-1)

文档内容是否对您有帮助?
有帮助
没帮助没帮助
如需获取即时帮助,请联系技术支持
咨询
扫码领取100+零代码资料简道云官方微信号400-111-0890
图标在线咨询
立即体验