首页 文章

LibreOffice Calc:如何根据多个条件引用另一个工作表中的单元格

提问于
浏览
1

我正在努力将边缘列表转换为邻接矩阵,并在LibreOffice Calc中寻找一个函数来引用具有一些条件的单元格值 .

我的表(在sheet2中)看起来像这样

A (id) B (id) C (weight)   
1    002    003    4
2    003    005    2
3    001    003    1
4    002    004    5
5    004    001    3

我想像这样制作一个新的数据集(在sheet1中),包含C列(权重)的值 .

A      B    C    D    E    F
1           001  002  003  004  005
2    001    0    0    1    0    0
3    002    0    0    4    5    0
4    003    0    0    0    0    2
5    004    3    0    0    0    0

所以,例如在单元格B2中我想要一个像这样的函数:

=(sheet2中列C的值WHERE“sheet2中A列中的行等于sheet1中的A2值" AND "表2中B列中等于sheet1中B1的行”)

如果没有结果,它应该产生值“0” .

有没有办法在LibreOffice Calc中创建这个功能?

1 回答

  • 1

    您可以使用数据透视表,但我没有找到满足每个要求的方法 . 我确信有更好的方法,所以这是一种快速和肮脏的方式:

    • 选择"data columns" A到C(在您的示例中:B1:D6)

    • 菜单数据 - 数据透视表 - >来自当前选择

    • 将"A"列拖动到"Row fields","B"到"Column fields"和"C"到数据字段 . 您可能想要从更多选项中禁用"Total Columns","Total rows"和"Add filter":

    enter image description here

    结果如下:

    enter image description here

    因此,它在正确的位置具有正确的值,但我没有找到插入0值的方法,其中没有组合结果 .

    您可以轻松编辑生成的矩阵或通过 copy / paste special (值和文本)创建可编辑的副本 .

相关问题