【问题标题】:Finding a Specific Element Inside Other Formulas在其他公式中查找特定元素
【发布时间】:2018-02-10 12:15:52
【问题描述】:

我需要帮助编写一个函数来查找“Th+4”并忽略所有其他附加的化学元素。

数据示例;

/HASr+(aq)  1.2595E-12
Sr+2    2.9449E-06
SrCl+   1.4637E-10
SrCO3 (aq)  1.01E-10
SrF+    2.1778E-11
SrHCO3+ 3.2969E-09

我怎样才能只找到 Sr+2 而忽略所有其他?目前,我使用此函数查找它,但它显示所有包含 Sr2+ 的元素。

=IF(ISERROR(FIND("Sr+2",A7,1)),B7,"")

请帮忙, 谢谢!

【问题讨论】:

  • 为什么你的问题开始是询问Th+4,然后现在你想要Sr+2
  • 另外,请澄清您对预期结果的问题。那么当你“找到”这个时会发生什么?是否要将列的值返回到您找到的内容的右侧?

标签: excel string function excel-formula words


【解决方案1】:

您的问题非常模糊,但我假设当您“定位”您的值时,您希望将值返回到右侧。

您可以使用Index()Match() 为您执行此操作。

假设您的查找范围是 A 列,并且要返回的值是 B 列,这应该有效:

=INDEX(A:B,MATCH("Sr+2", A:A),2)

分解公式

索引()
- A:B 是要索引的整个范围。您的查找值为 A 列,您的返回值为 B
列 - Match() 正在返回行号,我们将在下面显示。
- 2 是交叉引用来自Match() 的行的返回值的列。由于Match() 给了我们行号,这给了我们列号来“精确定位”返回值


匹配()
- "Sr+2" 是要搜索的字符串
- A:A 是搜索此字符串的位置。
这会将行返回到您的 Index() 函数

【讨论】:

  • 嗨,谢谢大家的回答!我同意我的解释含糊不清,没有切中要害。我知道它是如何工作的:)!谢谢
【解决方案2】:

使用Index()Match() 的另一种方法是使用VLOOKUP()。在您的案例中,此函数本质上结合了前两个函数以实现相同的目的。

=VLOOKUP("Sr+2",A:B,2)

Using the VLOOKUP() Function

当您需要逐行查找表格或范围内的内容时,请使用查找和引用功能之一的 VLOOKUP。例如,通过零件编号查找汽车零件的价格。

VLOOKUP 函数以最简单的形式表示:
=VLOOKUP(您要查找的值,您要查找该值的范围,在包含返回值的范围,精确匹配或近似匹配——表示为 0/FALSE 或 1/TRUE)。

【讨论】:

    【解决方案3】:

    我还发现这对我的问题有用;

    =IF((EXACT($AG$38,A7)),B7,"")
    

    感谢您的所有回答:)!

    祝你有美好的一天!

    【讨论】:

      猜你喜欢
      • 2010-12-02
      • 2015-10-31
      • 2020-07-12
      • 2012-11-01
      • 1970-01-01
      • 2022-01-01
      • 2018-02-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多