在 LibreOffice Calc 中对不同表中的行(“条件副本”)进行分组

Posted

技术标签:

【中文标题】在 LibreOffice Calc 中对不同表中的行(“条件副本”)进行分组【英文标题】:Grouping Rows ("conditional copy") from different tables in LibreOffice Calc 【发布时间】:2015-10-28 21:15:02 【问题描述】:

我想使用 LibreOffice Calc 将某些班级的学生分组到学校的不同组中。

我已经有所有班级的表格,我在其中输入了每个学生的组 (1-3):

我 LibreOffice 现在想要做的是将第 1 组(第 2 组、第 3 组...)中所有班级的所有学生复制到一个新表(Group1)中。然后,我为每个小组制定了一份学生名单。

在本例中,它将是 Name1 和 Name6。

我在网上搜索了几个小时,玩了很多次都没有成功。

感谢任何帮助!

【问题讨论】:

您在评论中提到您有多个表用于不同的类。我建议将所有类保存在一个表中 - 在表中添加一列“类”。然后也许看看VLOOKUP。见VLOOKUP questions and answers 【参考方案1】:
    选择数据单元格A1:B8; 菜单Data -> Standard Filter... 在标准过滤器窗口中,设置过滤器属性如下:
      字段名称:组;条件:=,值:1(或从下拉列表中选择); 点击Options 选择“Copy results to”;输入目标:$Group1.$A$1
    单击确定

【讨论】:

太好了 --- 谢谢!!我没有想到使用过滤器来做到这一点。但是还有一个问题:在不止一张桌子(classA,classB,...)中有第 1 组的学生。所以我需要将过滤器应用于多个区域。这可能吗?我可以先创建一个临时表并将所有学生复制到其中,然后应用过滤器,但这对我来说似乎是一种解决方法...... AFAIK,您不能为不连续的单元格范围定义一个过滤器。因此,在您的情况下,您必须使用临时表等解决方法。 是否可以对一个区域应用多个过滤器? @dawu 您是否考虑在 Base 而不是 Calc 中设置这些表?然后你可以编写多个查询(查询有点像数据库版本的过滤器)来显示你想要的每组信息。 @Lyrl 这是“我只需要一张表”的典型示例,但现在以“创建数据库”告终。在我的情况下,使用解决方法会更容易,因为我每年只需要这个文档一次,而且建立数据库会很费力......

以上是关于在 LibreOffice Calc 中对不同表中的行(“条件副本”)进行分组的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Libreoffice Calc 工作簿的所有工作表中删除所有图像

如何通过 LibreOffice 的 Calc 中的正则表达式语句捕获公司名称

LibreOffice (Calc) VBA 单元格总和(按索引)

用于 Libreoffice-calc 和 Openoffice-calc 的 Python“Hello World”[关闭]

用于 CSV 导入的 Libreoffice Calc 模板

如何让 LibreOffice 无头 Calc 计算以保存 uno 的新值?