Excel合并文本字符串(是/否)

Excel合并文本字符串(是/否),excel,excel-formula,excel-2010,vba,Excel,Excel Formula,Excel 2010,Vba,尝试将数据合并到一个主控表中。我有以下几点: Sheet 1 Sheet 2 Sheet 3 Name Gain(Y/N) Name Gain(Y/N) Name Gain(Y/N) AAA Y AAA Y AAA BBB N BBB B

尝试将数据合并到一个主控表中。我有以下几点:

Sheet 1                Sheet 2                 Sheet 3
Name    Gain(Y/N)      Name    Gain(Y/N)       Name    Gain(Y/N)   
AAA     Y              AAA     Y               AAA     
BBB     N              BBB                     BBB     N
CCC                    CCC     Y               CCC     Y
DDD                    DDD                     DDD     Y
EEE                    EEE                     EEE     N
最终看起来像(将所有图纸合并到sheet1)

问题是合并函数不能用于文本字符串(Y/N)

我想的是“如果vlookup”或匹配索引?但是为了多重参考? 而不是相互凌驾。也许有更简单的方法


感谢您的帮助:D

如果您不介意在每张纸上多创建一列,您可以将“Y”和“N”转换为数字。假设标签位于A列,则插入新的B列,并将以下内容放入B2中:

=IF(A2="Y", 3, IF(A2="N", 2, 1))
对所有纸张重复上述步骤。现在可以使用“MAX”函数进行合并。如果字母
“Y”
出现在任何地方,它将返回
2
。现在,您可以通过将以下公式放在合并数据旁边的列中返回Y/N/blank:

=INDEX({" ","N","Y"}, B2)
如果
B2
1
,则返回
如果
B2
2
,则返回
“N”
,等等。最后,您可以复制整个列,并“粘贴特殊值”以获得您想要的内容

=IF(OR(Sheet1!B2="Y",Sheet2!B2="Y",Sheet3!B2="Y"),"Y",IF(OR(Sheet1!B2="N",Sheet2!B2="N",Sheet3!B2="N"),"N",""))  
B2
的新工作表中并复制下来可能适合

编辑修订公式的简化,以反映对问题的编辑:

对于增益(Y/N)(假设为B列)的滤纸1对于(空白)和具有最小可见行号的单元格,输入:

=IF(OR(VLOOKUP(A4,Sheet2!A:B,2,0)="Y",VLOOKUP(A4,Sheet3!A:B,2,0)="Y"),"Y",IF(OR(VLOOKUP(A4,Sheet2!A:B,2,0)="N",VLOOKUP(A4,Sheet3!A:B,2,0)="N"),"N",""))  
A4
s中的
4
s更改为最小可见行号(根据需要调整列引用),并根据需要向下复制。

您还可以使用类似以下代码将所有数据提取到数据透视中:

SELECT Name, Gain, 'Sheet1' as [Sheet#]
FROM Sheet1
UNION
SELECT Name, Gain, 'Sheet2' as [Sheet#]
FROM Sheet2
UNION
SELECT Name, Gain, 'Sheet3' as [Sheet#]
FROM Sheet3

您能否显示您希望“整合”数据的外观?如果不同的工作表给出不同的结果(例如,在工作表1上,
AAA-->Y
,在工作表3上,
AAA-->N
),您会怎么做?感谢您的输入,但这是否仅适用于完全匹配并按行排序的工作表?
SELECT Name, Gain, 'Sheet1' as [Sheet#]
FROM Sheet1
UNION
SELECT Name, Gain, 'Sheet2' as [Sheet#]
FROM Sheet2
UNION
SELECT Name, Gain, 'Sheet3' as [Sheet#]
FROM Sheet3