【问题标题】:find and copy text in next column in excel在excel的下一列中查找并复制文本
【发布时间】:2014-09-18 19:59:59
【问题描述】:

我想知道 excel 在 excel 的下一列中查找和复制文本。我有一个带有文本或句子的 A 列。我想找到一个特定的单词并将该单词复制到下一列即 B 列,前提是该单词在 A 列的文本中可用。

假设 A 列的单元格 1 是:

“程序和流程的执行”。

我想搜索单词为“Processes”,并且应该在 B 列(单元格 1)中复制“ONLY IF”进程单词在文本中可用。

你能帮我解决这个问题吗?

还有一件事要确认,在同一个公式中,如果我想找到 2 个单词,它是否有效。可以说 1 是过程,其他是过程。我想要一个用于两个搜索词的公式,它会在适用的情况下给出一个包含一个词的结果。

【问题讨论】:

标签: excel


【解决方案1】:

对于您的特殊情况:

A1 中的“程序和流程的执行”。 B1中的公式:

=IF(ISNUMBER(SEARCH("processes", A1)), "processes", "")

SEARCH("processes", A1) 在单元格 A1 中搜索文本 "processes"。如果找到,则返回持有该位置的数字,如果未找到,则返回NOTHING

ISNUMBER 检查返回值是否为数字。仅当找到该单词时才会出现这种情况。如果是,则返回值为true,否则为false

单元格 B1 中的IF 计算 ISNUMBER 的返回值。如果是true,则返回"processes",用"processes" 填充单元格B1。如果是false,则返回空文本""

这可以归结为常见的情况:

A1 中的文本。 在 C1 中查找的单词。 B1中的公式:

=IF(ISNUMBER(SEARCH(C1, A1)), C1, "")

求值:如果C1中的文本可以在A1中找到,则将C1中的文本放入B1中,否则将空文本放入B1中。

【讨论】:

  • 它不工作。您能否仅在上述示例中指导我?
  • 这个解决方案对我有用。此解决方案与我发布的解决方案之间的区别在于,此解决方案将比较文本放在 B 列中,而我的解决方案将匹配文本放在。
  • @Sharmil 我扩展了这个例子。请注意,在不同语言版本的 Excel 中,函数的调用方式不同。用德语你会做=WENN(ISTZAHL(SUCHEN(C1; A1)); C1; "")。另请注意,即使 grammar 也可能不同;在德语中,您在英文版本中使用分号。
【解决方案2】:

如果你把它放在 B 列:

 =IF(ISNUMBER(SEARCH("processes", A4)), MID(A4, SEARCH("processes", A4), 9), "")

它会将 A 列中匹配(不区分大小写)单词“processes”的文本复制到 B 列。

kaedinger 的解决方案展示了如何使用 C 列中的单词“参数化”搜索,这是一件好事。如果您想从 A 列复制匹配的文本,则需要测量 C 列中单词的长度,我在上面硬编码了“9”。

(参考:http://office.microsoft.com/en-au/excel-help/compare-cell-contents-HP003056130.aspx

【讨论】:

  • 我使用了这种语法,但它不起作用。在没有类似进程的单词的单元格中,它正在复制。
  • 当单词匹配时,它也会给出整个句子作为结果。当单词不匹配时,它给出了我要复制的单词
  • 我给出的第一个解决方案对我来说并不是“没有类似过程的单词时复制”。但是,我误读了这个问题。我的解决方案区分大小写,并复制了全部内容。我已经编辑了解决方案以挑选不区分大小写的匹配项,并将 A 单元格中的版本放入 B 单元格(以便 B 单元格的内容与 A 单元格的内容具有相同的大小写)。此屏幕截图显示它正在工作:dropbox.com/s/qj92laropyxt8k8/…
  • 还有一件事要确认,在同一个公式中,如果我想找到 2 个单词,它是否有效。可以说 1 是进程,其他是过程。我想要一个用于两个搜索词的公式,它会在适用的情况下给出一个包含一个词的结果。
  • 我建议您对新要求提出另一个问题:清楚地描述要求!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-21
  • 2021-02-02
  • 1970-01-01
相关资源
最近更新 更多