使用Google表单更新现有的Google电子表格

Pse*_*nce 5 forms google-sheets google-apps-script google-forms

我正在尝试构建一个谷歌表单,填写现有谷歌电子表格的某些单元格与谷歌表格上的回复.我还需要谷歌表单上的一些答案来自电子表格的下拉样式菜单.

一个组织目前正在使用现有的电子表格,让其成员每周记录一些信息,但是,无论我多少次更正它们,一些成员仍会不正确地填写表格.出于这个原因,我试图让这个过程更加自动化.

设置当前电子表格的方式是,组织的不同部门有多个工作表.在每个工作表中都有一列专用于该部门中的名称,该列的每一行都有不同的名称.还有专门针对特定周的列,因此将第1周的信息放入D列和E列,将第2周的信息放入F和G等.

EX:

#| 名称| 百分比| ...第1周...... | ......第2周.... | ....

1 | ..鲍勃.. | 0%..... .. | 信息1 | 信息2 | 信息1 | 信息2 .. |

2 | ..Joe .. | 99%...... | 信息1 ..................................

我希望能够:

  1. 使形式的下拉菜单中选择的划分,那么这将使问题信息的其余部分基于关闭对应于师纸张的第一个问题.
  2. 第二个问题下拉菜单选择名称.名称将基于电子表格的现有名称列中列出的名称.
  3. 一个下拉菜单,用于选择他们提交信息的特定周.
  4. 他们用"信息1"填写的填写框问题
  5. 用"信息2"填写的填写框问题

提交时,表单将根据(1)找到正确的表格,然后根据(2)找到正确的行,然后根据(3)找到正确的列,然后将(4)和(5)复制到相应的单元格中.

是否有可能做到这一点?或者我是否需要为每个部门创建单独的表单?您可以提供给我的任何帮助将非常感激.我对谷歌脚本没有任何熟悉,虽然我对C++有经验并且具有python脚本的基本工作知识.

Cam*_*rts 4

使用现有的 Google Forms 很难实现(但并非不可能)。您无法使用 Google Apps 脚本来操作表单的显示以响应用户操作,就像在从头开始编写的表单上使用 Javascript 那样。

Google Apps 脚本可以像在表单编辑器中一样生成和操作表单,并且可以在提交表单时触发它以对响应采取操作,但它不能直接与用户交互。

为了实现您想要的目标,您有几种选择。

您可以设置一个带有逻辑分支的多页 Google 表单,以获得所需的表单行为,然后使用触发 onFormSubmit() 的 Apps 脚本来负责将数据移动到适当的位置。

或者,您可以完全跳过使用现有的 Google 表单,而是使用作为网络应用程序发布的 Google Apps 脚本来呈现表单,这使您可以完全控制向用户显示的表单(HTML、CSS 和 Javascript),但您不需要可以利用任何 Google 表单功能。您可以使用 doGet() 呈现表单并使用 doPost() 处理提交。

第三种方法是两者的混合,设置多个单独的 Google 表单,并使用作为 Web 应用程序发布的 Apps 脚本来显示第一个下拉列表并将用户引导至适当的表单。然后,您可以触发每个 Google 表单的 onFormSubmit() 脚本来处理数据的移动。

请参阅以下内容:

https://developers.google.com/apps-script/guides/triggers/events#google_forms_events

https://developers.google.com/apps-script/guides/web#deploying_a_script_as_a_web_app https://developers.google.com/apps-script/guides/html/