同志们,告诉你们一个大好消息,小编昨晚表白成功了,脱单了!对,脱脱脱脱脱单了啊! 怎么回事?是不是想知道,我表格里有什么? 我用一个很长很长很长的if函数...画了一个桃心! 你用if函数?画了个...什么桃? 桃心! 什么心? 桃心! 桃什么? 桃心!! 这样的桃心!!! 是不很俗套?很俗套!但是有没有效?有效!我想可能因为对方是一个财务妹子,整天面对各种丧心病狂的虐心表格,看见.xlsx第一感觉就想哭,但是打开以后看到精心制作的一个桃心,超出期望值的喜悦自然涌上心头。 所以如果你喜欢财务、人事等天天做表的妹子,不妨学一学这个技能吧!当然,温馨提示:恋爱有风险,表白需谨慎! 下面我给大家讲解用if函数如何画出上面的桃心 步骤二:在公式编辑栏输入以下公式,然后注意,按<Ctrl+Enter>结束 =IF((INT(SQRT((ROW()-25)^2+(COLUMN()-30)^2))<=20)*(ROW()<=25)+(INT(SQRT((ROW()-25)^2+(COLUMN()-70)^2))<=20)*(ROW()<=25)+(ROW()-COLUMN()<=15)*(ROW()>=25)*(COLUMN()<=50)+(ROW()+COLUMN()<=115)*(ROW()>=25)*(COLUMN()>=50),'█','') 步骤三:把行、列的高度与宽度拉小到一个合适的范围,再更改一下填充颜色,桃心马上呈现: 【讲解】先来普及点数学的知识: 在高中数学的解析几何,我们知道: 那么在Excel中,是以左上角为坐标原点,向下及向右为正数坐标值,表示为(Row,Column),如Z7单元格表示为(7,26)。 来分析公式,照例一步一步的来分解看看,首先我们在公式编辑栏做些小动作: 在找到合适的节点处,我们输入一个软换行<Alt+Enter>,在公式中的软换行并不影响计算,但是瞬间就让公式的可读性大大增强。整个公式是分成以下四个部分组装出这个桃心: (INT(SQRT((ROW()-25)^2+(COLUMN()-30)^2))<=20)*(ROW()<=25):表示坐标原点在(25,30),半径为20的圆,并且取列标小于等于25的部分,对应图中的第1象限的上半圆。 (INT(SQRT((ROW()-25)^2+(COLUMN()-70)^2))<=20)*(ROW()<=25):表示坐标原点在(25,70),半径为20的圆,并且取列标小于等于25的部分,对应图中的第2象限的上半圆。 (ROW()-COLUMN()<=15)*(ROW()>=25)*(COLUMN()<=50):表示行坐标与列坐标的差在小于等于15的范围内,并且取行坐标大于等于25、列坐标小于等于50的部分,对应图中第3象限的等腰三角形。 (ROW()+COLUMN()<=115)*(ROW()>=25)*(COLUMN()>=50):表示行坐标与列坐标的和在小于等于115的范围内,并且取行坐标大于等于25、列坐标大于等于50的部分,对应图中第4象限的等腰三角形。 你以为if函数只能画桃心?那你就错了,来看看我们还能用if函数做什么好玩的东西: 好吧,这个笑脸的制作很简单,跟我一起动手做起来: 步骤二:在公式编辑栏输入以下公式,然后注意,按<Ctrl+Enter>结束 =IF((INT(SQRT((ROW()-50)^2+(COLUMN()-50)^2))=40)+(INT(SQRT((ROW()-30)^2+(COLUMN()-30)^2))=10)+(INT(SQRT((ROW()-30)^2+(COLUMN()-70)^2))=10)*(ROW()<30)+(INT(SQRT((ROW()-15)^2+(COLUMN()-30)^2))=10)*(ROW()<14)+(INT(SQRT((ROW()-15)^2+(COLUMN()-70)^2))=10)*(ROW()<14)+(INT(SQRT((ROW()-50)^2+(COLUMN()-50)^2))=30)*(ROW()>50)+((ROW()=50)*(COLUMN()>21)*(COLUMN()<79)),'█','') 步骤三:把行、列的高度与宽度拉小到一个合适的范围,这样的一个笑脸就在你的Excel表格中出现了吧 这是为什么呢? 我们一步一步的来分解看看,最核心的就是这个长长的公式,你是不是已经被打败了呢?不用急,这样写公式明显很乱,我们在公式编辑栏做些小动作: 再找到合适的节点处,我们输入一个软换行<Alt+Enter>,在公式中的软换行并不影响计算,但是瞬间就让公式的可读性大大增强。我们发现它们的结构几乎全都是: INT(SQRT((ROW()-a)^2+(COLUMN()-b)^2))=r 现在逐个开始解释公式,其中INT表示向下取整,SQRT表示算术平方根: (INT(SQRT((ROW()-50)^2+(COLUMN()-50)^2))=40):坐标原点在(50,50),半径为40的圆(整个脸盘的大小) (INT(SQRT((ROW()-30)^2+(COLUMN()-30)^2))=10):坐标原点在(30,30),半径为10的圆(左眼的大小) (INT(SQRT((ROW()-30)^2+(COLUMN()-70)^2))=10)*(ROW()<30):坐标原点在(30,70),半径为10,且Row坐标小于30的弧(右眯缝眼的大小) (INT(SQRT((ROW()-15)^2+(COLUMN()-30)^2))=10)*((ROW()<14)):坐标原点在(15,30),半径为10,且Row坐标小于14的弧(左耳的大小) (INT(SQRT((ROW()-15)^2+(COLUMN()-70)^2))=10)*((ROW()<14)):坐标原点在(15,70),半径为10,且Row坐标大于14的弧(右耳的大小) (INT(SQRT((ROW()-50)^2+(COLUMN()-50)^2))=30)*(ROW()>50):坐标原点在(50,50),半径为30,且Row坐标大于50的弧(整个嘴的下半圆) (ROW()=50)*(COLUMN()>21)*(COLUMN()<79):坐标在(50,21)到(50,79)的直线(嘴的上嘴唇) 怎么样,整个公式就这样被我们解读完成了。这里面最重要的一个知识点:公式的排版 有了好的逻辑,好的排版,纵然你的公式很长,我们仍然可以清晰的解读。 Excel是死的,图是活的,我们换换参数,来吐个舌头: 怎么样,是不是很可爱啊 |
|