2012-06-25 34 views
0

我有Excel文件,其中数据自动输入到不同的工作表。我正在尝试开发一个新工作表来显示一些其他工作表的一些重要信息。我完成了大部分单元格,但有两个给我一些问题。问题是我正在使用VLOOKUPS/ISERROR和VLOOKUPS/ISERROR。我的问题是,当我们合并分离答案,不产生任何结果。我想知道是否有一种方法可以防止在VLOOKUPS/ISERROR语句中的一个或两个都为false时显示“#VALUE!”。在Excel中的VLOOKUP问题,#值

下面是我用于单元格的公式的一个副本,下面是我将收到的数据的一个示例。

= IF(ISERROR(VLOOKUP(22,ChargingData $ B $ 31:!$ I $ 41,2, FALSE)), “”,VLOOKUP(22,ChargingData $ B $ 31:$ I $ 41,2 (33,ChargingData!$ B $ 31:$ I $ 41,2, FALSE)),“”,VLOOKUP(33,ChargingData!$ B $ 31:$ I $ 41,FALSE)/ 2000)+ IF 2,FALSE)/ 2000)

= IF(ISERROR(VLOOKUP(23,ChargingData!$ B $ 31:$ I $ 41,2, FALSE)),“”,VLOOKUP(23,ChargingData!$ B $ 31: $ I $ 41,2,FALSE)/ 2000)+ IF(ISERROR(VLOOKUP(33,ChargingData!$ B $ 31:$ I $ 41,2, FALSE)),“”,VLOOKUP(33,ChargingData!$ B $ 31 :$ I $ 41,2,FALSE)/ 2000)

表数据

33 65456   868931   654964    989872 
23   65685 456331   6568  789911 65464 
22   35468    84213 654987    633314 

我想知道,如果有人可以帮助我停止从节目表中的“#VALUE!”信息。而不是我希望显示的消息,“”,如果任何单元格中没有任何内容,并且显示任何必要单元格中存在数据的正确信息。由于

+0

公式适用于我,我得到32.768作为答案,但我注意到第二个'VLOOKUP'有一个稍微不同的范围 – SeanC

+0

我在看着vlookup并注意到只是现在但那不是问题。 –

+0

当一个VLOOKUP返回“”,另一个数字 - 你不能将“”添加到一个数字(你会得到一个#VALUE!错误)时,就会出现这个问题。您使用的是哪个版本的Excel?你在这里接受VLOOKUP吗?如果22和23只在查找范围内最多出现一次,那么SUMIF可能是更可取的。 = SUM(SUMIF(ChargingData!$ B $ 31:$ B $ 41,{22,23},ChargingData!$ C $ 31:$ C $ 41))/ 2000 –

回答

0

试试这个(我的括号可能是一个小关):

=IF(Or(ISERROR(VLOOKUP(23, ChargingData!$B$31:$I$41,2, FALSE),ISERROR(VLOOKUP(33, ChargingData!$B$31:$I$41,2, FALSE))),"",(VLOOKUP(23, ChargingData!$B$31:$I$41,2, FALSE)/2000) + (VLOOKUP(33, ChargingData!$B$31:$I$41,2, FALSE)/2000))) 

进行分解:

如果任vLookups是错误

=IF(Or(ISERROR(VLOOKUP(23, ChargingData!$B$31:$I$41,2, FALSE),ISERROR(VLOOKUP(33, ChargingData!$B$31:$I$41,2, FALSE))) 

返回空白

,"", 

否则,返回第一VLOOKUP/2000 +第二VLOOKUP/2000

(VLOOKUP(23, ChargingData!$B$31:$I$41,2, FALSE)/2000) + (VLOOKUP(33, ChargingData!$B$31:$I$41,2, FALSE)/2000))) 
0

我碰巧注意到,一些有关的数据是怎么来的,不知怎么的数据来自于字符串中的字符,而不是通用字符,因此在VLOOKUP的开始处为“”。根据Barry Houdini的建议,如果VLOOKUP表为空或缺失,我将VLOOKUP的返回替换为“0”。我添加了额外的IF语句,显示空白,如果返回0

下面是新的功能,我使用的细胞:

= IF(IF(ISERROR(VLOOKUP( “23”, ChargingData!$ B $ 31:$ I $ 41,2,FALSE)),0,VLOOKUP(“23”, ChargingData!$ B $ 31:$ I $ 41,2,FALSE)/ 2000)+ IF(ISERROR(VLOOKUP(“ 33“, ChargingData!$ B $ 31:$ I $ 41,2,FALSE)),0,VLOOKUP(“33”,ChargingData!$ B $ 31:$ I $ 41,2, FALSE)/ 2000)<> 0,IF(ISERROR(VLOOKUP (23),ChargingData!$ B $ 31:$ I $ 41,2,FALSE)/ 2000)+ IF( ISERROR(VLOOKUP(“33”,ChargingData!$ B $ 31:$ I $ 41,2,FALSE)),0,VLOOKUP(“33”, ChargingData!$ B $ 31:$ I $ 41,2,FALSE)/ 2000) , “”)

0

尝试这种情况:

=numbervalue(ifna(VLOOKUP(23, ChargingData!$B$31:$I$41,2, FALSE),0))/2000+ 
numbervalue(ifna(VLOOKUP(33, ChargingData!$B$31:$I$41,2, FALSE),0)) 

numbervalue()变化字符串编号( “”=> 0) ifna()如果没有找到值,返回0