基本上我的问题是我在excel的一个单元格中有一个字符串,然后需要查看该字符串是否存在于另一行(不是一个单元格而是整行),如果是,则打印另一个单元格的内容同一行,但在另一列。
我将举一个基本的例子:
Title Answer
Police 15
Ambulance 20
Fire 89
现在我需要扫描标题列,例如“Police”,然后用Answer下的值填充单元格(在本例中为15)。
我不能只说IF(A2="Police";B2;""
,因为我需要扫描整个标题栏。
我已经尝试使用IF(COUNTIF(A$2:A$100;"Police");
扫描A2的内容到A100的字符串警察,并且知道如何使它打印一个常量(只是把东西放在;之后)但是无法弄清楚如何制作它“常量”变量,根据找到的行而变化。因此,如果COUNTIF
在单元格A44
中找到警察,则我的公式的答案为B44
,就像它在A62
中找到警察一样,那么我的公式应该显示{ {1}}
我希望这是有道理的,有人可以帮助我:)。
请注意,我使用的是excel 2010,需要一个正常的公式,因为我不能在此文档中使用脚本。
编辑:
这是我到目前为止的情况,请注意我使用的电子表格远比我在问题中的“简单”示例复杂......
B62
这会在=IF(ISNUMBER(FIND("RuhrP";F9));LOOKUP(A9;Ruhrpumpen!A$5:A$100;Ruhrpumpen!I$5:I$100);"")
中找到"RuhrP"
的每个答案中显示"RuhrP"
,而不是我想要的答案,而这应该是F9
中单元格索引所在的答案与找到RuhrPumpen!I$5:I$100
的{{1}} coloum相同。再一次,对于复杂性我很难想到更好的方式来表达它。
答案 0 :(得分:12)
我注意到你提出了这个公式
=IF(ISNUMBER(FIND("RuhrP";F9));LOOKUP(A9;Ruhrpumpen!A$5:A$100;Ruhrpumpen!I$5:I$100);"")
.....但是LOOKUP
在这里不合适,因为我假设你想要一个完全匹配(LOOKUP不能保证,并且查找范围中的数据也必须被排序),所以{{1 }或VLOOKUP
会更好....你也可以使用IFERROR来避免IF函数,即
INDEX/MATCH
注意:VLOOKUP始终在“表数组”的第一列中查找查找值(A9),并从“表数组”的第n列返回一个值,其中n由col_index_num定义,在本例中为9
INDEX / MATCH有时更灵活,因为您可以显式定义查阅列和返回列(并且返回列可以位于查找列的左侧,这在VLOOKUP中不是这种情况),这样看起来就像像这样:
=IFERROR(VLOOKUP(A9;Ruhrpumpen!A$5:Z$100;9;0);"")
INDEX / MATCH还允许您更轻松地从不同的列返回多个值,例如通过在A9前使用$符号和查找范围Ruhrpumpen!A $ 5:A $ 100,即
=IFERROR(INDEX(Ruhrpumpen!I$5:I$100;MATCH(A9;Ruhrpumpen!A$5:A$100;0));"")
可以拖动此版本以从列I,列J,列K等获取连续值.....
答案 1 :(得分:1)
假设
源数据范围为A1:B100 查询单元格为D1(此处您将输入警察或火灾) 结果单元格为E1
E1中的公式= VLOOKUP(D1, A1:B100, 2, FALSE)
答案 2 :(得分:1)
我想出了这样的数据设计:
主要表格: A栏:泵代码(数字)
B列:显示工作表'Ruhrpumpen'
中相应行的公式=ROW(Pump_codes)+MATCH(A2;Ruhrpumpen!$I$5:$I$100;0)
公式有“;”而不是“,”,它也应该是德语符号。如果没有,请更换。
C栏:显示来自col B中公式所找到的行的'Ruhrpumpen'列A中数据的公式
=INDIRECT("Ruhrpumpen!A"&$B2)
D栏:公式显示'ruhrpumpen'列B中的数据,该列来自col B中公式找到的行:
=INDIRECT("Ruhrpumpen!B"&$B2)
表'Ruhrpumpen':
A栏:关于某个泵的一些数据
B栏:更多数据
第I栏:泵代码。列表的开头包括主表的B列中公式使用的已定义名称“Pump_codes”。
电子表格示例:http://www.bumpclub.ee/~jyri_r/Excel/Data_from_other_sheet_by_code_row.xls
答案 3 :(得分:0)
Guys非常有趣的是,我们很多人在使用带有Match或Hlookup的Vlookup / Index时遇到了查找值复制的问题....如果我们都知道单元格中有重复值,Vlookup会选择反对第一个项目将匹配loopkup数组....所以这里是你们所有人的解决方案......
e.g。
在A栏中,我们有一个名为company ....的字段。Column A Column B Column C
Company_Name Value
Monster 25000
Naukri 30000
WNS 80000
American Express 40000
Bank of America 50000
Alcatel Lucent 35000
Google 75000
Microsoft 60000
Monster 35000
Bank of America 15000
现在,如果你查找上面的数据集,你会发现在第10行的公司名称中有两面性。 11.因此,如果您放置vlookup,数据将首先出现。但是如果您使用以下公式,您可以使您的查找值唯一并且可以轻松地选择任何数据而不会有任何争议或遇到任何问题< / p>
将公式放入C2 ......... A2&"_"&COUNTIF(A2:$A$2,A2)
..........第一行项目和第10行的结果为Monster_1
; 11 ..... Monster_2, Bank of America_2
分别....现在你可以获得独特的价值,现在你可以轻松选择任何数据了..
干杯!!! Anil Dhawan