我有一个类似以下的excel文件:
我想将Print = 1的行和avgsocre的值替换为我在另一个文件中的行,如下所示:
第二个文件中的索引号完全偏离1,因为还有\ N的值来自Print = 0的行,所以我不能使用replace然后vlookup。
非常感谢您的帮助。
答案 0 :(得分:0)
看起来我称之为Design
和Author
的变量可以唯一地标识您的观察结果,因此查找Votes
和AvgScore
可能更有意义基于这些值,而不是尝试使用第二个文件的row-1
中的col A
值。
在您的主文件中,使用公式(在此示例中为Votes_new
)创建列row 2707
:
{=INDEX(SecondFile!$A$1:$H$11, MATCH(1, (SecondFile!$B$1:$B$11=$A2707)*(SecondFile!$C$1:$C$11=$B2707)*(SecondFile!$G$1:$G$11=1), 0), 4)}
在5
列的最后一个参数中,使用与4
相同的公式代替AvgScore_new
。
此公式符合三个条件:Design
(等于当前行中的值),Author
(等于当前行中的值)和Print
(等于到1)。它从第二个文件中的第4列获取值,Votes
(或第5列,AvgScore
)。
请注意,您必须使用Ctrl+Shift+Enter
作为数组公式输入。
另请注意,如果没有匹配,则会返回#N/A
错误(因为Design
- Author
组合不存在或者Print
不相等至1
),因此您可能希望将其括在IFERROR()
公式中。
或者,如果确实希望按行引用查找,则可以使用=VLOOKUP(ROW()-1, ...)
查找当前行(例如,{{1从第二个文件中减去1(2707
),然后找到print:2706
的值。你可以在=VLOOKUP(ROW()-1, SecondFile!$A1$H11, 7, FALSE)
函数中使用它来查找不同的列如果值是1:例如,IF()