gpt4 book ai didi

javascript - Google Apps 脚本 - 从另一个工作表导入工作表值

转载 作者:行者123 更新时间:2023-11-30 09:40:22 24 4
gpt4 key购买 nike

我正在努力尝试为 Google 表格编写有条件的 Google 应用程序脚本。该工作表有 5 个选项卡。基本上,工作表从谷歌表单获取数据。客户填写表格,它会填充我们相关工作表的“主”选项卡。

这是我挂断的地方:该表格用于教师将学生推荐给特定的管理员。控制表单的人需要能够将特定的数据行分配给特定的管理员,每个管理员都有自己的选项卡设置。他们通过从下拉列表中选择要将行分配给哪个管理员来执行此操作。

因此,如果第 2 行分配给“Miranda”,某些数据将移至“Miranda”选项卡。为了争论起见,假设该特定行的 D 列和 E 列将移至“Miranda”选项卡的 A 列。

这是我到目前为止的想法:

function importStudent() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var master_sheet = ss.getSheetByName("Master");
var miranda_sheet = ss.getSheetByName("Miranda");
var columnT = master_sheet.getRange("T1:T").getValues();
var columnD = master_sheet.getRange("D1:D").getValues();
var columnE = master_sheet.getRange("E1:E").getValues();
for(var i = 0; i <= columnT; i++) {
if (columnT[i][0] === "Miranda") {
var miranda_row = (miranda_sheet.getLastRow() + 1);
var active_row = SpreadsheetApp.setActiveRange(columnT[i].getRow());
var selectionFirst = columnD.setActiveRange(active_row:columnD);
var selectionLast = columnE.setActiveRange(active_row:columnE);
var fullName = selectionFirst + " " + selectionLast;
fullName.copyValuesToRange(miranda_sheet, 1, 1, miranda_row, miranda_row);
}
}
}

下面的代码被破坏了,我正在寻找一些让它工作的指导。马上,我知道我至少有两个问题:1 变量太多,2 我不确定我是否可以将变量作为参数传递给 setActiveRange() 类。所以,我的问题:

我该如何清理它?我应该使用什么(类?)来使其发挥作用?

PS - 在谈到 JavaScript 时,我仍然认为自己是新手。我有知识,但实际应用是我仍在学习的东西:)

最佳答案

不确定您是否需要使用脚本来执行您正在尝试的操作。为什么不使用查询公式?

例如:

=query(MasterData!:A:E,"SELECT D,E WHERE A = 'Miranda'",0)

查询有一些帮助here .您还可以跨电子表格进行查询。也就是说,您可以为 Miranda 分配她自己的电子表格,该电子表格来自您的主数据。

如果您需要更多帮助,请与我分享示例电子表格数据。

关于javascript - Google Apps 脚本 - 从另一个工作表导入工作表值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41412088/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com