我有跨多列的单元格,我已用红色突出显示它们。这些值是用 Alt Enter 分隔的员工姓名。我需要为所有包含多个姓名的单元格添加一个新名称(相同名称),无论是在开头、结尾还是任何地方。
答案1
要将它们添加到末尾,请使用以下命令:
=IF( ISERROR( FIND(CHAR(10), A1:G1) ), A1:G1, A1:G1 & CHAR(10) & "New Name")
要将它们添加到开头,请使用以下命令:
=IF( ISERROR( FIND(CHAR(10), A1:G1) ), A1:G1, "New Name" & CHAR(10) & A1:G1 )
基本上,它们会查找 ( FIND()
)Alt-Enter
中的字符,并得到两个结果之一。如果范围内的单元格中存在一个字符,则结果就是该字符在该单元格中的位置(无论如何都是单元格中的第一个字符),并且该结果是一个不错的自然结果。如果不存在字符,则会产生错误。因此,如果不存在字符,则返回ISERROR()
True,如果存在字符,则返回 False。IF()
如果没有Alt-Enter
字符(即,如果没有任何字符,或者只有一个名称或一个句子,无论可能是什么),则获取该结果并返回当前单元格内容;如果有字符,则返回当前单元格内容加上新名称Alt-Enter
。
但是,它无法在您想要结果的实际单元格中执行此操作。因此,您必须将公式放在另一组单元格中,并在为它们添加新名称后,复制这些公式单元格,然后转到实际数据区域并Paste|Special|Values
用新版本(包括新名称)覆盖原始数据。
公式要放入的单元格通常称为“辅助单元格”,虽然这样做很容易,但有时可能会出现问题。您可能会想将它们放在当前数据单元格下方或上方的行上,但其他内容已经在那里了。很尴尬……等等。但人们只局限于这样想。没必要这样做。
任何时候您需要这样做,只需在电子表格中插入一张新表,将公式放入 IT 中,复制并粘贴到实际表上,然后删除辅助表。没有混乱,没有麻烦。
如果您不想每次都写公式,尤其是一年后再写一次,您可以将公式放入Named Range
(可以称之为“AddName
也许”)中。这样它就在那里,无需记住如何编写它,当您想要这样做时,只需插入辅助表并在您需要的任意数量的单元格中使用公式(这样很容易记住,或者至少很容易找到要使用的命名范围!)。无需记住不=AddName
熟悉的公式。
您不必像上面那样将新名称放在双引号中。您可以使用单元格引用,并在其中键入新名称。或者,如果它已经在某个单元格中,请引用该单元格。
您可以在姓名之间插入新姓名,例如在所有单元格中插入第二个姓名。但这将是一个相当复杂的公式。并且将其设置为一些奇怪的事情,例如“第四个姓名,但如果至少还没有三个,则作为第三个,如果还没有三个,则作为第二个”,这将非常复杂。
Excel 不允许您执行一个操作,Find and Replace
在该操作中,您可以显示您想要单元格中包含的内容以及添加的新内容。因此,搜索类似内容*ALT-Enter*
并将其替换为,*Alt-EnterNew Name
以便获得原始内容和新名称将不起作用。而且无论如何,也没有真正好的字符串可供搜索,因为任何单元格都可能有任意数量的名称。
Find
Excel 将在或中搜索单元格颜色,FIND and Replace
但由于您无法进行替换以返回原来的内容加上新名称,因此价值有限...在这种情况下仅限于“无”。