excel函数如何判断回文?
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或者邮箱删除。