咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

将单元格内的文本逆序排列,我原本以为在现实场景中没什么实际意义,谁会做这么无聊的事?所以也很少写。


然而越来越多人提了这个问题,而且还真有这需求,比如,将密码倒过来排列,以确保安全;和弦倒过来弹一遍啦;甚至某人不是还把报菜名倒背了一遍吗?


既然群众有要求,那就安排上。


挺早前我其实教过大家一个方法,详情请参阅


今天我再教大家一个用函数实现的方法。


案例:


下图 1 是一组电子券码,请在另一列中将数字顺序倒过来排列。


效果如下图 2 所示。


解决方案:


1. 在 B2 单元格中输入以下公式 --> 下拉复制公式:

=TEXTJOIN(,,MID(A1,20-ROW($A$1:$A$19),1))


公式释义

  • ROW($A$1:$A$19):取 A1 至 A19 单元格的行数,会生成一组 1 至 19 的数组;
  • 20-...:生成 19 至 1 的数组;
  • MID(A1,...,1):
    • 提取 A1 单元格中,从上述数组值开始的字符,每次提取一位;
    • 也就是说先从第 19 位开始提取,然后第 18 位,以此类推,直至第 1 位;
    • 凭肉眼观察可以发现,A 列的数值最多 4 位,所以我们也可以将 mid 函数的第二个参数修改为 5-ROW($A$1:$A$4),1)
  • TEXTJOIN(,,...):
    • textjoin 函数的作用是将多个区域和/或字符串的文本组合起来,其中包括在文本值之间指定的分隔符;
    • 参数含义为 TEXTJOIN(分隔符,忽略空白单元格,要连接的文本)
    • 整个公式的含义就是将 mid 函数提取出来的每一位连接起来,不需要分隔符;从而实现了逆向排列字符。