我有两个表格,每个表格都在同一个文件中自己的工作表中:
姓名 年龄
Alice 18
Bob 19
Carol 20
Dave 19
姓名 性别
Bob 男
Dave 男
Eve 女
我想自动创建包含列名上的连接数据的第三个表(工作表):
姓名 年龄 性别
Bob 19 男
Dave 19 男
LibreOffice Calc 是否支持此操作?
答案1
这是一个简单直接的方法。
第 1 页:
第 2 页:
第 3 页:
在 Sheet 3 中,姓名和年龄只是对表 1 的单元格引用。因此 A2 包含:
=Sheet1!A2
B2 包含:
=Sheet1!B2
性别是通过在表 2 中查找该行的名称来填充的。因此 C2 包含:
=VLOOKUP(Sheet3!A2,Sheet2!A:B,2,0)
请注意,表 1 和表 2 不需要按相同的顺序排列。
顺便说一句,这些公式反映了在工具 | 选项 | LibreOffice Calc | 公式中模拟 Excel 公式语法的设置首选项。
修订评论
这是针对表 1 和表 2 不匹配且您只需要公共记录的情况调整此方法的简单方法。假设表 2 看起来像您的示例:
现有公式将得出以下结果:
Alice 和 Carol 在表 2 中找不到匹配项。Eve 不在表 1 中,因此也不会有她的匹配项。打开筛选功能可隐藏 #N/A 记录:
如果您想要一个干净的表格,其中这些记录实际上已经消失,则复制和粘贴特殊值(在 LO Calc 中,我选择了文本和数字,但没有选择公式)将仅粘贴非隐藏行。这显示在行 10-12 中(注意没有隐藏行)。