Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从一个excel列中查找值并在B列中显示差异值?_Excel_Excel Formula_Excel 2010_Excel 2016 - Fatal编程技术网

如何从一个excel列中查找值并在B列中显示差异值?

如何从一个excel列中查找值并在B列中显示差异值?,excel,excel-formula,excel-2010,excel-2016,Excel,Excel Formula,Excel 2010,Excel 2016,i、 e.如果A列包含单词“Galaxy”,则在B列中显示三星;如果A列包含单词“Apple”,则在B列中显示“Apple” 我想使用excel公式,而不是VBA。有人能帮忙吗?创建一个表,列出要搜索的关键字和预期结果: 然后使用以下公式: A B (This is what I want) Apple iPhone Apple Ve

i、 e.如果A列包含单词“Galaxy”,则在B列中显示三星;如果A列包含单词“Apple”,则在B列中显示“Apple”


我想使用excel公式,而不是VBA。有人能帮忙吗?

创建一个表,列出要搜索的关键字和预期结果:

然后使用以下公式:

   A                                        B (This is what I want)

Apple iPhone                                       Apple
Verizon Galaxy S6 (SM-G920F)                      Samsung
T-Mobile Galaxy S7 Edge (SM-G935F)                Samsung
Apple iPod Touch                                   Apple

如果不需要额外的表,但希望对数组进行硬编码,则可以这样做:

=INDEX(E:E,AGGREGATE(15,6,ROW($D$2:$D$3)/(ISNUMBER(SEARCH($D$2:$D$3,A2))),1))

创建要搜索的关键字和预期结果的表格:

然后使用以下公式:

   A                                        B (This is what I want)

Apple iPhone                                       Apple
Verizon Galaxy S6 (SM-G920F)                      Samsung
T-Mobile Galaxy S7 Edge (SM-G935F)                Samsung
Apple iPod Touch                                   Apple

如果不需要额外的表,但希望对数组进行硬编码,则可以这样做:

=INDEX(E:E,AGGREGATE(15,6,ROW($D$2:$D$3)/(ISNUMBER(SEARCH($D$2:$D$3,A2))),1))

您可以使用如下公式:

=INDEX({"Apple","Samsung"},AGGREGATE(15,6,ROW($1:$2)/(ISNUMBER(SEARCH({"Apple";"Galaxy"},A2))),1))

您可以使用如下公式:

=INDEX({"Apple","Samsung"},AGGREGATE(15,6,ROW($1:$2)/(ISNUMBER(SEARCH({"Apple";"Galaxy"},A2))),1))

以下是您可以在B列中使用的公式:

=IF(ISNUMBER(SEARCH("Apple";A1));A1;"")
以下是示例数据和结果:


如果在A列的相应单元格中找不到“Apple”或“Galaxy”,则此公式会将值留空。

以下是可在B列中使用的公式:

=IF(ISNUMBER(SEARCH("Apple";A1));A1;"")
以下是示例数据和结果:


如果在A列的相应单元格中找不到“Apple”或“Galaxy”,则此公式会将值留空。

请尝试以下操作:

=IF(IFERROR(FIND("Apple",A1) > 0,FALSE), "Apple", IF(IFERROR(FIND("Galaxy",A1)>0,FALSE),"Samsung",""))

请尝试以下操作:

=IF(IFERROR(FIND("Apple",A1) > 0,FALSE), "Apple", IF(IFERROR(FIND("Galaxy",A1)>0,FALSE),"Samsung",""))

和往常一样好而且有才华:)。然而,我很想知道为什么你倾向于使用
Large 1
而不是max,Small 1而不是min。这是某种习惯还是有技术原因?在使用Small和Large的聚合中,我们可以使用数组类型的公式来创建数组,但不能使用聚合中的max或min。我们可以使用MAX(IF())或MIN(IF())来代替它,但是我们需要使用Ctrl-Shift-Enter,有时在编辑时会忘记,这是一个麻烦@谢谢你much@Donny7请将您使用的方法标记为正确的方法。单击答案旁边的复选标记即可完成此操作。@ScottCraner完成。但有没有办法将多个答案标记为正确答案呢?还是像往常一样漂亮、有才华:)。然而,我很想知道为什么你倾向于使用
Large 1
而不是max,Small 1而不是min。这是某种习惯还是有技术原因?在使用Small和Large的聚合中,我们可以使用数组类型的公式来创建数组,但不能使用聚合中的max或min。我们可以使用MAX(IF())或MIN(IF())来代替它,但是我们需要使用Ctrl-Shift-Enter,有时在编辑时会忘记,这是一个麻烦@谢谢你much@Donny7请将您使用的方法标记为正确的方法。单击答案旁边的复选标记即可完成此操作。@ScottCraner完成。但是,有没有办法将多个答案标记为正确答案呢?很乐意帮忙。:)很乐意帮忙。:)