手机版

excel函数如何判断回文?

时间:2021-09-13 来源:互联网 编辑:宝哥软件园 浏览:

excel函数如何判断回文?用公式判断单元格中的数据是否回文。

回文是指单词或句子无论从左往右读还是从右往左读都是一样的。也就是说,属于回文的单词或句子是左右对称的。例如,“行为”和“女士”这两个词。

先不看答案,自己试试。

公式

假设单词或句子在单元格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。")

确定该单元格中的值是否为回文。

公式分析

1.假设单元格A1中的数据是“夫人”。显然,这是一个回文。

在公式中:

ROW(OFFSET($A$1,LEN(A1)))

OFFSET函数从单元格A1延伸5个单元格(在本例中为LEN(A1)=5),因此它可以解析为:

ROW(1:澳元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 }

获取:

{真;真;真;真;真}

将上述结果代入公式:

=if (sumproduct ((mid (a1,row)(offset($ a $ 1,len (a1)),1)=mid (a1,len (a1)-row (offset ($ a $1,len (a1))) 1,1)) 0。)

获取:

=IF(SUMPRODUCT(({ TRUE;真;真;真;TRUE}) 0)=LEN(A1),“这是回文”,“不是!”)

转换为:

=IF(SUMPRODUCT({ 1;1;1;1;1})=LEN(A1),“这是回文”,“不是!”)

转换为:

=IF(5)=LEN(A1),“这是回文”,“不是!”)

转换为:

=IF(5=5,“这是回文”,“不是!”)

转换为:

=IF(TRUE)“这是回文”,“不是!”)

获取:

这是回文。

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}

生成主公式,得到:

=IF(SUMPRODUCT(({ TRUE;真;真;真;TRUE}) 0)=LEN(A1),“这是回文”,“不是!”)

转换为:

=IF(SUMPRODUCT({ 0;0;1;0;0})=LEN(A1),“这是回文”,“不是!”)

转换为:

=IF(1=5,“这是回文”,“不是!”)

清楚地得到:

不要。

版权声明:excel函数如何判断回文?是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。