gpt4 book ai didi

database - 谷歌应用程序脚本 : How to copy and automatically edit the data from a spreadsheet to others?

转载 作者:搜寻专家 更新时间:2023-10-30 23:34:57 25 4
gpt4 key购买 nike

我正在尝试解决这个问题,但尽管付出了努力,我还是没有进步!

我每天都会收到一个包含两个数据标签的电子表格。每个都有大约 9000 行。我需要从此工作表中捕获数据并生成两个新的电子表格,一个用于“每日报告”(仅包含当天的数据),另一个用于创建“数据库”(包含所有数据以前的结果)。如何使用 GAS 自动执行此操作?

到目前为止,我一直在使用下面的代码,但是当我在新电子表格中设置值时,出现了范围错误。 :( 我不知道如何声明我想要复制并设置第 10 行和最后一行之间的所有行,数据来自

  function getData() {
var day = SpreadsheetApp.openById('XXXX');
var tab1 = day.getSheets()[0];
var tab2 = day.getSheets()[1];

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sss = ss.getSheets()[0];

var weeks = tab1.getRange("G8").getValues();
var dates = tab1.getRange("G9").getValues();
var regions = tab1.getRange('A10:A').getValues();
var locnames = tab1.getRange('B10:B').getValues();
var locnums = tab1.getRange('C10:C').getValues();
var divisions = tab1.getRange('D10:D').getValues();
var depnums = tab1.getRange('E10:E').getValues();
var depnames = tab1.getRange('F10:F').getValues();
var saless = tab1.getRange('G10:G').getValues();
var qtys = tab2.getRange('G10:G').getValues();

var datestart = sss.getRange('A2').setValues(dates);
var dateend = sss.getRange('B2').setValues(dates);
var week = sss.getRange('C2').setValues(weeks);
var region = sss.getRange('D2:D').setValues(regions);
var locname = sss.getRange('E2:E').setValues(locnames);
var locnum = sss.getRange('F2:F').setValues(locnums);
var division = sss.getRange('G2:G').setValues(divisions);
var depnum = sss.getRange('H10:H').setValues(depnums);
var depname = sss.getRange('I2:I').setValues(depnames);
var sales = sss.getRange('J2:J').setValues(saless);
var qty = sss.getRange('K2:K').setValues(qtys);

}

如果有人能帮助我,非常感谢。

我在链接中放了一个电子表格来说明工作表的格式和我需要做什么。前两个选项卡与我得到的相同。在接下来的两个选项卡(daily_report、数据库)中是我想与代码分开获取的工作表。 https://docs.google.com/spreadsheets/d/1_iz0oansAfINosV2qNoDG0QMNpGS1bp1AL5kJQztRtc/edit?usp=sharing

最佳答案

目标范围必须与源范围匹配,否则会出错。目标范围的长度和宽度必须与源数据相同。您可以使用数据来设置长度(行数)和宽度(列数)

参数:

range(Start Row, Start Column, Number of Rows, Number of Columns)

代码:

var regions = tab1.getRange('A10:A').getValues();
var region = sss.getRange(2,4,regions.length,regions[0].length).setValues(regions);

关于database - 谷歌应用程序脚本 : How to copy and automatically edit the data from a spreadsheet to others?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44213359/

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