我正在寻找一些指示。
我想根据其他人的内容将文本输入到某些单元格中。
我在单元格B1中使用的当前公式是
=IF(ISERROR(FIND("example",A1)),"no","yes")
到目前为止,这么简单。这有效。如果“示例”位于单元格A1中,则在B1中输入“是”,向下复制。
但是,B列中有一些单元格已经使用其他文本进行格式化,我想在整个电子表格中应用此公式而不删除B列中的现有文本。到目前为止,我唯一能想到的就是是将这个公式放在C列中,然后复制下来,然后将文本从C列移动到B列 - 但这需要费力的复制和粘贴,这样可以抵消公式提供的时间节省。
实现这一目标的最佳方法是什么?我是否需要求助于VB来扫描整个工作表,迭代A1-A30000并在B列中插入必要的文本?
干杯。
修改
所以,这已经分类很多了,有各种各样的建议。
但是,我使用的实际公式是:
=IF(ISERROR(FIND("example",A1)),"","yes")
因为我只希望在找到模式时将文本放在columnB中。这提出了另一个问题!如果未找到模式,则双引号表示不替换实际上在其中插入“NULL”字符;当您尝试在操作的下一次迭代中选择空白单元格时,不会选择任何单元格,因为即使没有可见字符,Excel也认为存在。的xD
通过编写一个宏函数来删除空字符来解决这个问题。
Excel有时令人气愤。 :P
答案 0 :(得分:2)
已经提供的所有信息和建议绝对正确并完成工作, 我想我会添加一个不需要对现有数据进行任何更改的内容(例如排序或过滤):
如您所述,将您的公式放在单元格B1中。根据需要将任何条件格式应用于该单元格。
现在选择并复制(ctrl + C)单元格B1。选择B列(单击列标题)。
然后在find and Select
功能区选项卡上单击Home
(双筒望远镜图标)。选择go to Special
。
在弹出窗口中选择Blanks
,然后单击“确定”。您将注意到列B中的所有空白单元格都已选中。不要点击任何内容,请按Crtl-V
。
Voilà,您的公式和条件格式将粘贴到所有空白单元格中,其余的单独使用。
快速键盘序列:
答案 1 :(得分:1)
有几种方法可以解决这个问题。我将解释其中的两个:
如果排序是一个选项,请按B列(升序 / AZ )对表格进行排序,以获取顶部的所有空值< / em>的。在第一个空白单元格中编写公式,然后通过双击该单元格的右下角来扩展它。
如果无法进行排序,请将过滤器应用于表格,然后选择仅 B列中的空白单元格。然后在第一个空白单元格中编写公式,通过将其向下拖动扩展到最后一个单元格。
答案 2 :(得分:1)
您可以将现有的B列值与要在一个公式中有条件地添加的值进行组合,例如在ColumnC中,例如:
=IF(ISBLANK(B1),IF(ISERROR(FIND("example",A1)),"no","yes"),B1)
复制到西装。然后,如果ColumnB变为冗余,则将ColumnC,Paste Special,Values复制到顶部并删除ColumnB。结果是将公式转换为其结果,这可以提高处理速度但是减少了处理附加行(如果有的话)的容易性,这些行受到相同的要求。