如果值与不同工作表上的另一列匹配,则返回是或否 [英] Return a yes or no if a value is matched on another column on a different sheet

查看:0
本文介绍了如果值与不同工作表上的另一列匹配,则返回是或否的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含2张工作表的Excel工作簿。其中一张称为花名册,第二张称为安全会议。表2(安全会议)上有[ID#-NAME]一栏,供出席者使用。如何在表1(花名册)上为参加表2(安全会议)的人员返回"是"或"否"?此外,花名册只有ID#,在安全会议表上有ID#和名称,但我只需要匹配ID编号。 我正在尝试if和Match函数,但是有一个包含ID号和名称的列让我感到困惑。

推荐答案

确定,您有一个名为Roster的表和一个名为Safety Meeting的表,在第二个表中有一列ID和名称,用连字符分隔?

选项1:Roster表与Safety Meeting表同名
  1. 组合花名册上的ID和姓名,格式与Safety Meeting相同:
=A:A  & "-" & B:B        for Excel 2010
=@A:A & "-" & @B:B       for current version
Gives e.g. "24601-Valjean"
  1. MATCHSafety Meeting列中的此组合ID-名称。我已将该列命名为attendees
=MATCH(  A:A & "-" &  B:B, attendees, 0)    Excel 2010
=XMATCH(@A:A & "-" & @B:B, attendees)       Current
Gives row number if found or #N/A if not found
  1. 转换为TRUE/FALSE
=NOT( ISNA( MATCH( A:A & "-" &  B:B, attendees, 0)))      Excel 2010
=NOT( ISNA( MATCH(@A:A & "-" & @B:B, attendees, 0)))      Current

选项2:Roster工作表与Safety Meeting的名称不完全相同
  1. Safety Meeting与会者选择帮助器列。这可能在同一张纸上,也可能在隐藏的纸上。我已将其命名为attendee_id
  2. 查找attendees中的-
=FIND("-",  attendees)    Excel 2010
=FIND("-", @attendees)    Current

  1. attendees中获取第一个(多个减一)字符-这是ID:
=LEFT( attendees, FIND("-",  attendees) - 1 )     Excel 2010
=LEFT(@attendees, FIND("-", @attendees) - 1 )     Current
  1. 在此帮助器列中查找RosterID:
"At meeting?" column
=NOT( ISNA( MATCH( A:A, attendee_id, 0)))    Excel 2010
=NOT( ISNA( MATCH(@A:A, attendee_id, 0)))    Current
  1. 注意到这不起作用:

  2. RosterID具有数值,而attendee_id具有文本值。必须使它们相匹配。将A:A替换为TEXT(A:A,0)以将数字格式化为文本。

=NOT( ISNA( MATCH( TEXT( A:A, 0), attendee_id, 0)))   Excel 2010
=NOT( ISNA( MATCH( TEXT(@A:A, 0), attendee_id, 0)))   Current

这篇关于如果值与不同工作表上的另一列匹配,则返回是或否的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆