将特定数据从许多Google工作表中提取到母版

时间:2016-06-12 21:37:30

标签: google-apps-script google-sheets google-sheets-api

我正在尝试使用Google表格和脚本创建设备预订系统。我是相当新的,所以我正在寻找指导而不是解决方案,我喜欢学习!

我有8名科学教师,他们每个人都需要为他们的课程订购仪器。我为他们创建了一个电子表格,其中包含他们的时间表,他们的想法是他们将设备请求输入到他们的时间表相关的框中。

我现在要做的是将任何已完成的框作为一组数据(包括所需日期,教师姓名,当然还有所需设备等)发送到技术人员看到的主表。格式将完全不同,我不想只是将范围从一张纸输入到另一张(这很简单!),只是它包含的数据。

我希望主表格在理想情况下表现得像谷歌表格链接的电子表格,但是要将8个输入电子表格中的数据作为输入数据而不是表格(我认为这是一种过于繁琐的输入方法)。

我已经搜索了很长时间并且没有任何东西,导入整张纸,或者完整的范围很容易,但我希望主表能够格式化和重新排序数据本身。

我想知道是否可以将我需要的数据放入数组中,将该数组传递给新工作表并让新工作表忘记它来自何处。

我正在寻找关于这是否可能的建议,如果是这样的话,我要找出方向来解决这个问题,而不是完全解决这个问题。谢谢!

1 个答案:

答案 0 :(得分:1)

我建议的方法是在主表单中创建一个脚本。使用SpreadsheetApp.openById()或SpreadsheetApp.openByUrl()打开外部电子表格。

https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app#methods

打开电子表格后,打开工作表,检索相关范围,并使用getValues()将数据拉入数组,从相关工作表中检索数据

https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet#getsheetbynamename

https://developers.google.com/apps-script/reference/spreadsheet/sheet#getrangerow-column-numrows-numcolumns

https://developers.google.com/apps-script/reference/spreadsheet/range#getvalues

然后,您可以按照帖子中的提法处理数组中的数据,构建一个用于输出的数组,并使用Range.setValues()将其写入主工作表