Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 管理我的数据:应用程序脚本与工作表功能_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script 管理我的数据:应用程序脚本与工作表功能

Google apps script 管理我的数据:应用程序脚本与工作表功能,google-apps-script,google-sheets,Google Apps Script,Google Sheets,项目:对捐赠表格进行排序和自动化。每天我都会通过电子邮件收到一份电子表格文件,上面有当天的每位新捐赠者。我的项目的第一步是从[每日导出的数据]中获取数据,重新格式化/获取我每年需要的信息,并将其附加到[年度数据]的底部 例如: 每日导出数据中的[Mrs.][Jane][Doe][$30]被推送到年度数据中,如 [简太太有][30美元] 问题:我不熟悉电子表格。我花了大约20个小时的时间学习google sheets vs excel,学习如何使用它,并复习我的Javascript。我很高兴能够使

项目:对捐赠表格进行排序和自动化。每天我都会通过电子邮件收到一份电子表格文件,上面有当天的每位新捐赠者。我的项目的第一步是从[每日导出的数据]中获取数据,重新格式化/获取我每年需要的信息,并将其附加到[年度数据]的底部

例如: 每日导出数据中的[Mrs.][Jane][Doe][$30]被推送到年度数据中,如

[简太太有][30美元]

问题:我不熟悉电子表格。我花了大约20个小时的时间学习google sheets vs excel,学习如何使用它,并复习我的Javascript。我很高兴能够使用/提高我的javascript技能,但是,如果能够记住大量内置函数,那么在没有应用程序脚本的情况下,似乎可以完成很多事情。因此,我的问题是多方面的

首先,当内置函数足够时,编写自定义脚本是否是一种不好的做法?这些文档看起来很透彻,但不是很有说明性,当我可以自己编写一些JS来执行操作、学习更多内容并从中获得更多乐趣时,筛选文档以找出如何按“他们的方式”执行操作是非常令人沮丧和耗时的

第二,我目前的计划是只需要一个脚本,通过[Import Data]按钮从年度数据启动。然后,该脚本将通过SpreadsheetApp.openById检索导入数据,获取值,让它们在我推送它们的数组时跳舞,并为年度数据创建新格式的数组。然后,我只需将这些新数组写入年度数据的底部。这种方法是否有效和/或更可取

我知道(并且非常恼火)您不能从自定义脚本调用内置函数。因此,如果我没有自定义脚本,我不知道我会怎么做。可能有一个=getrange(nestamillionprebuiltfunctions),我可以从年度数据表中调用,但是

1) 我不知道如何使预先构建的功能从按钮触发。我也不知道如何通过预先构建的函数从不同的工作表中提取数据,并在每次单击所述按钮时将该数据附加到末尾,因为我对ARRAYFUNCTION的理解告诉我,当我从中提取数据时,它就会爆炸

2) 我不知道怎么会有人想到一个复杂的数据输入操作,在表单字段中没有缩进,似乎在某一点上这不是你应该做的


关于这个脚本,我有很多问题要问,但总而言之,在我做出承诺之前,我正在寻找关于我的一般方法的反馈:p

听起来你有主动权使用谷歌应用程序脚本来完成你描述的任务,并寻求安慰。根据我的经验和对您任务的理解以及您所陈述的偏好,GAS对我来说似乎是最符合逻辑的

您正在描述一些任务,例如将数据元素从电子表格A移动到B和/或从C列移动到D列等,并将一些值连接起来以在单个单元格中创建新的组合。这可以通过使用GAS脚本轻松实现:

  • SpreadsheetApp.getActiveSheet()或.openById(id)方法

  • Sheet和Range类方法,如.getSheets()[0]和.getRange(行、列、numRows、numColumns)

  • .getValue()或.getValues(),然后在脚本中处理数字/字符串

  • .setValue(value)将它们放在需要的位置


虽然可以说您对所知道的内容感到满意,但听起来您似乎对内置函数没有清晰的愿景或背景,而且您还是更喜欢编写脚本。在功能栏中使用嵌套的电子表格函数对我来说真是一件痛苦的事情,如果你想做一些花哨的事情,比如按钮,或者自动导入csv等,最终会受到限制

谢谢你的回复。你有权这么做。在过去的几个月里,我一直在自学html/css/jquery/wordpress,试图获得一些新的工作技能,因此我没有spreadsheeets方面的背景知识,因此使用应用程序脚本肯定比使用电子表格功能更舒服。也就是说,我希望获得新的技能,所以我不怕把某些偏好和“正确的方式”放在一边。谢谢你的安慰。我个人认为,如果你在同一个电子表格中或多或少地对应着数学和业务计算的行和列,那么电子表格的功能是好的,但是当你在工作表之间移动,把字符串放在一起,使用条件,经过一系列连续步骤的事情。谢谢你的想法,内森。这也是我的直觉告诉我的,但由于我是一个新的程序员,我还不相信他们:P