Excel嵌套If和VLOOKUP语句

时间:2014-12-01 21:46:47

标签: excel-vba if-statement vba excel

我想帮助创建一个函数来执行以下操作:如果单元格中的信息等于存储在列表中的信息(在另一个工作表中但在同一工作簿中),而不是添加该单元格+另一个单元格,如果为false比显示FALSE或其他。

我是Excel的新手,但十年前做了一个关于visual basic的课程,并记住了其中一些功能的基本原理。我尝试了许多不同的方法,但没有找到有效的方法。我已经尝试在VLOOKUP语句以及IFHLOOKUP中嵌套LOOKUP,但没有成功。

  • RolledSteel是我的产品清单。
  • List是我的工作表,其中包含RolledSteel(以及其他列表)。
  • Invoice是包含可链接到RolledSteelList的函数的工作表。

我尝试但没有成功的功能:

=IF(N10=List!$A$2:$G$13,W10+W10,FALSE)

=IF(N10=RolledSteel,W10+W10,FALSE)

=IF(N10=VLOOKUP(N10,RolledSteel,4,FALSE),W10+W10,FALSE)

我还有一些问题,但现在我想解决这个问题。任何帮助都会非常感激。

2 个答案:

答案 0 :(得分:0)

我最简单的方法是使用Match()功能和If(Isnumber(),如下所示:

=IF(ISNUMBER(MATCH(N10,RolledSteel,FALSE)),W10+W10,"FALSE")

基本上,你说的是:

  • N10列表
  • 中查找RolledSteel
  • 如果它在那里,你会得到一个号码,所以ISNUMBER将是真的,所以总和
  • 如果不是,您将收到错误,因此ISNUMBER将为false,因此请返回" FALSE"

希望这是有道理的并且可以解决问题

答案 1 :(得分:0)

尝试使用Countif()功能。例如,=COUNTIF(List,N10)返回List中N10值的出现次数。您可以将其扩展为:

=IF( COUNTIF(List,N10)>0 ,W10+W10 ,FALSE )