excel函数怎么判断回文
发布时间:2022-04-25 04:30:11
excel函数怎么判断回文?使用公式判断单元格中的数据是否是回文。
所谓回文,是指单词或句子无论是从左向右读还是从右向左读,都是一样的。也就是说,属于回文的单词或句子是左右对称的。例如,单词“deed”、“madam”。
先不看答案,自已动手试一试。
公式
假设单词或句子在单元格A1中,那么可以使用公式:
=IF( SUMPRODUCT( ( MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)= MID(A1,LEN(A1)-ROW(OFFSET($A$1,,,LEN(A1)))+1,1)) + 0 ) = LEN(A1), “这个是回文”,”No!”)
判断该单元格中的值是否是回文。
公式解析
1. 假设单元格A1中的数据是“madam”。很明显,这是个回文。
公式中的:
ROW(OFFSET($A$1,,,LEN(A1)))
OFFSET函数以单元格A1为起点扩展5个单元格(示例中LEN(A1)=5),因此其可解析为:
ROW($A$1:$A$5)
得到:
{1;2;3;4;5}
这样,公式中的:
MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)
转换为:
MID(A1, {1;2;3;4;5},1)
得到:
{“m”;”a”;”d”;”a”;”m”}
再看公式中的:
MID(A1,LEN(A1)-ROW(OFFSET($A$1,,,LEN(A1)))+1,1)
可转换为:
MID(A1,LEN(A1)-{1;2;3;4;5}+1,1)
转换为:
MID(A1,5 -{1;2;3;4;5}+1,1)
转换为:
MID(A1,{5;4;3;2;1},1)
得到:
{“m”;”a”;”d”;”a”;”m”}
将两者相比较:
MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)= MID(A1,LEN(A1)-ROW(OFFSET($A$1,,,LEN(A1)))+1,1)
即:
{“m”;”a”;”d”;”a”;”m”}={“m”;”a”;”d”;”a”;”m”}
得到:
{TRUE;TRUE;TRUE;TRUE;TRUE}
将上述结果代入公式:
=IF( SUMPRODUCT( ( MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1) = MID(A1,LEN(A1)-ROW(OFFSET($A$1,,,LEN(A1)))+1,1))+ 0 ) = LEN(A1), “这个是回文”, “No!”)
得到:
=IF( SUMPRODUCT( ({TRUE;TRUE;TRUE;TRUE;TRUE})+ 0 ) = LEN(A1), “这个是回文”, “No!”)
转换为:
=IF( SUMPRODUCT( {1;1;1;1;1} ) =LEN(A1), “这个是回文”, “No!”)
转换为:
=IF( 5 = LEN(A1), “这个是回文”,”No!”)
转换为:
=IF( 5 = 5,”这个是回文”, “No!”)
转换为:
=IF( TRUE ,”这个是回文”, “No!”)
得到:
这个是回文
2. 假设单元格A1中的数据是“excel”。很明显,这不是回文。
根据上面的分析可知,公式中的:
MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)
将转换为:
{“e”;”x”;”c”;”e”;”l”}
公式中的:
MID(A1,LEN(A1)-ROW(OFFSET($A$1,,,LEN(A1)))+1,1)
将转换为:
{“l”;”e”;”c”;”x”;”e”}
两者比较:
MID(A1,ROW(OFFSET($A$1,,,LEN(A1))),1)= MID(A1,LEN(A1)-ROW(OFFSET($A$1,,,LEN(A1)))+1,1)
即:
{“e”;”x”;”c”;”e”;”l”}={“l”;”e”;”c”;”x”;”e”}
得到:
{FALSE;FALSE;TRUE;FALSE;FALSE}
代入主公式中,得到:
=IF( SUMPRODUCT( ({TRUE;TRUE;TRUE;TRUE;TRUE})+ 0 ) = LEN(A1), “这个是回文”, “No!”)
转换为:
=IF( SUMPRODUCT({0;0;1;0;0}) =LEN(A1), “这个是回文”, “No!”)
转换为:
=IF(1 = 5, “这个是回文”,”No!”)
显然得到:
No!


猜你喜欢
- WPS的拼写检查功能,可以检查当前文档中的拼写错误。▪点击上方菜单栏审阅-拼写检查。当拼写无误时,会提示你拼写检查已完成。 当拼写
- 微信群发在哪里?很多小伙伴都知道微信有群发功能,很多人却不知道该如何操作,下面,小编就为大家介绍下微信群发方法。打开手机微信,点击【我】-【
- 很多想要装系统或者需要查看电脑位数的小伙伴,不知道怎么看自己的电脑是32位还是64位,其实非常的简单有多种方法都可以直接查看具体的系统位数,
- 现在使用Word和Excel的人越来越多,但使用的广泛性并不代表其中的功能都容易掌握,而且有的功能不是很难却不易在软件中找到操作它们的位置,
- Excel查询函数中,Lookup和Vlookup有哪些区别?它们在应用中应该如何把握?请看本文讲解。★Lookup——数与行列比Looku
- 根据微软对Win8产品支持周期的规定,从2016年1月12日开始,Windows8将不再受微软保护,这意味着该系统将不再接收微软提供的相关更
- Excel中经常需要使用到求平均值的技巧,平均值具体该如何求呢?接下来是小编为大家带来的excel表格求平均值的教程,供大家参考。excel
- 如何使用ps给证件照换背景?给大家介绍如何使用ps给证件照换背景,一起来看看吧。1.打开图片,复制一层,这里我们可以看到,证件照的背景为红色
- 怎么在Windows10中为应用程序设置CPU进程优先级Windows?不建议将进程设置为具有实时优先级,因为它可能导致所有其他较低优先级的
- Win10在哪看显卡型号?电脑肯定是有显卡的,要么是集成显卡,要么是独立显卡,有的用户想要查看自己电脑的显卡型号,想看看自己的显卡能不能运行
- PPT2013 同一张图片怎么设置不用的动画效果?PPT2013 为一张图片设置先后不同的动画效果。这里以一张图片,先飞入再消失为例,需要的
- 下面来跟各位讲讲c盘hosts文件没法修改怎么解决。1.打开计算机文件夹,然后按照以下路径查找主机文件(C:WindowsSystem32d
- Word中如何防止表格的跨页断行?如图 8‑30所示为某公司人力资源部制作的工资表,但由于表格中的内容太多,导致表格内容被拆分到
- 首先下载好VB6.0并解压解压完成后,点击“SETUP”安装程序,在VB6.0中文企业版安装界面点击“下一步”选择“接受协议”,并点击“下一
- 如何用word打出乐谱的低音、高音如何用word打乐谱的低音、高音?方法很简单的,下面小编就为大家详细介绍一下,详细操作步骤请往下看。最终效
- excel怎么制作三维簇状柱形图?excel表格中想插入柱状图,该怎么插入呢?下面我们就来看看excel中制作柱形图的详细教程,很简单,需要
- 在excel中sumif函数是一个非常有用的函数,它可以按条件进行求和。下面让小编为你带来excel表格sumifs的几个使用方法。exce
- 之前微软正式停止对Win7的主流支持,现在微软有宣布今年7月正式结束对Windows Server 2003支持服务,下面我们来看看具体情况
- 这次故障的致因有些复杂。首先,故障很可能是长期超频造成网卡损坏(小的损坏),造成网络不稳定的现象。故障现象:朋友的一台电脑,其主要配置为:P
- 很多用户在存储上传文件的时候发现格式不对或者不符合,但是不知道怎么修改文件属性,其实最简单的方法就是,打开隐藏的已知文件类型的扩展名,然后修