虫虫技术在线--技术决定出路

当前位置: 首页 > 办公 > Excel >

为数组设置上限、下限的方法集合

时间:2010-08-01 12:14来源:虫虫技术在线收集整理 作者:虫虫编辑 点击:
【概念】 上、下限是工作中常用的限制数值的需求,即当数值处于下限~上限区间时,取值为数值本身,超过限制时,则取限制值。 【为单值设置上下限示例】 比如:当一个值超过10

【概念】
上、下限是工作中常用的限制数值的需求,即当数值处于下限~上限区间时,取值为数值本身,超过限制时,则取限制值。
【为单值设置上下限示例】
比如:当一个值超过100时,返回100,否则返回数值本身;当一个值小于20时,返回20,否则返回数值本身。
其中,上限为100,下限为20。

【解法1】
=IF(A1>100,100,IF(A1<20,20,A1))
【解法2】
=MIN(100,MAX(A1,20))
【解法3】
=MEDIAN(100,20,--A1)
【解法4】
=--TEXT(A1,"[>100]1!0!0;[<20]2!0")

上述解法,当A1为空单元格时,除了解法2返回下限外,其它都返回0。
貌似解法4的公式长度比较长,呵呵。

【为数组设置上下限】
如果要求将A1:A10返回为设置了上限为100、下限为20的数组时,上述4个解法只有解法1、解法4能胜任,解法2、3使用的MAX、MEDIAN均只能返回单值。
比如:
=IF(A1:A10>100,100,IF(A1:A10<20,20,A1:A10))
=--TEXT(A1:A10,"[>100]1!0!0;[<20]2!0")

相对而言,TEXT的解法变得更短些。

【通用式】
从解法4可以视为:=--TEXT(数值,"[>上限]上限;[<下限]下限")
其中,红色的上限、下限为“条件”,可以直接用文本连接符&相连
而蓝色的上限、下限为需要返回的值,因数值中常有0出现,需设置占位符!或\,但如果上下限是一个变量,无从得知是否有0时,可以用CHAR(34)&上限&CHAR(34)将它强制用CHAR(34)返回的引号"包含起来,作为“文本”。

通用式为:
=--TEXT(数值,"[>"&上限&"]"&CHAR(34)&上限&CHAR(34)&";[<"&下限&"]"&CHAR(34)&下限&CHAR(34))

Excel2007中,通用式为:

=--TEXT(A1,"[>"&B1&"]"&CHAR(34)&B1&CHAR(34)&";[<"&C1&"]"&CHAR(34)&C1&CHAR(34)&";G/通用格式")
 

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容