首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从多个工作表创建Google电子表格数据透视表?

在Google电子表格中创建数据透视表时,默认情况下只能从单个工作表中提取数据。然而,通过一些技巧和步骤,可以从多个工作表中汇总数据并创建一个综合的数据透视表。以下是详细的步骤:

方法一:使用QUERY函数汇总数据

  1. 准备数据
    • 假设你有多个工作表(Sheet1, Sheet2, Sheet3),每个工作表的结构相同。
  2. 创建一个新的工作表
    • 在Google电子表格中创建一个新的工作表(例如,名为Summary)。
  3. 使用QUERY函数汇总数据
    • Summary工作表中,使用QUERY函数将多个工作表的数据汇总到一个表中。例如:

    =QUERY({Sheet1!A:D; Sheet2!A:D; Sheet3!A:D}, "SELECT * WHERE Col1 IS NOT NULL", 1)

    • 这里,{Sheet1!A:D; Sheet2!A:D; Sheet3!A:D}将多个工作表的数据合并在一起,QUERY函数用于选择非空行。
  4. 创建数据透视表
    • 选择Summary工作表中的数据区域。
    • 点击菜单中的数据 > 数据透视表
    • 在弹出的对话框中,选择数据源和目标位置,然后点击创建
    • 配置数据透视表的行、列、值和过滤器。

方法二:使用App Script自动化汇总数据

如果你有很多工作表,手动汇总数据可能会很繁琐。你可以使用Google Apps Script来自动化这个过程。

  1. 打开Apps Script编辑器
    • 在Google电子表格中,点击扩展程序 > Apps Script
  2. 编写脚本
    • 在Apps Script编辑器中,编写一个脚本来汇总多个工作表的数据。例如:

    function combineSheets() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheets = ss.getSheets(); var summarySheet = ss.getSheetByName('Summary') || ss.insertSheet('Summary'); summarySheet.clear(); // 清除现有数据 var header = sheets[0].getRange(1, 1, 1, sheets[0].getLastColumn()).getValues()[0]; summarySheet.appendRow(header); for (var i = 0; i < sheets.length; i++) { if (sheets[i].getName() === 'Summary') continue; // 跳过Summary工作表 var range = sheets[i].getRange(2, 1, sheets[i].getLastRow() - 1, sheets[i].getLastColumn()); var values = range.getValues(); summarySheet.getRange(summarySheet.getLastRow() + 1, 1, values.length, values[0].length).setValues(values); } }

  3. 运行脚本
    • 保存脚本并点击运行按钮。
    • 可能需要授权脚本访问你的电子表格。
  4. 创建数据透视表
    • 选择Summary工作表中的数据区域。
    • 点击菜单中的数据 > 数据透视表
    • 在弹出的对话框中,选择数据源和目标位置,然后点击创建
    • 配置数据透视表的行、列、值和过滤器。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

21分50秒

083_尚硅谷大数据技术_Flink理论_Table API和Flink SQL(四)_创建表_从文件读取数据

2分7秒

使用NineData管理和修改ClickHouse数据库

1分35秒

高速文档自动化系统在供应链管理和物流中的应用

领券