在 Excel 中将单元格中的每个字符更改为另一个字符

在 Excel 中将单元格中的每个字符更改为另一个字符

我有一大堆短语,我想让它们更加隐蔽。我想用另一个字符替换每个字母/字符,然后能够用另一个公式解码,这样我就能回答我自己的谜题了。

我在使用替换函数时遇到的问题是,它会逐个更改每个字母,而不是一次性更改所有字母。以下是发生的情况的示例:

我想abcxyz用以下替换代码进行更改:

  • 一个=一个
  • b=y
  • c=x
  • x=d
  • y=e
  • 兹=f

发生的情况是这样的:

fedxba

转换为如下内容:

zyxdef

然后我将能够将其转换回这样:

abcxyz

我希望这是有意义的,如有任何问题请随时提问。

答案1

正如我在评论中所写,如果您只想使用工作表函数来执行此操作,则需要为原始单词中的每个字符设置单独的公式。您还需要一个替换表。

这是一种方法。我已命名替换表SubTable。原始单词在A2。我只将公式向下复制了 9 行,但如果一个单词可能有 25 个字符,则需要向下填充那么多行。“编码”单词将位于底部。

编码:

A3:  =IFERROR(REPLACE($A2,ROWS($1:1),1,VLOOKUP(MID($A2,ROWS($1:1),1),SubTable,2,0)),$A2)

解码:

B3:  =IFERROR(REPLACE($B2,ROWS($1:1),1,INDEX(SubTable,MATCH(MID($B2,ROWS($1:1),1),SubTable[Sub],0),1)),$B2)

在此处输入图片描述

相关内容