Google apps script 循环的返回值
这快把我逼疯了!我试图将一个工作表中的值返回到另一个工作表中 在我的代码中,我记录了详细信息,它们是正确的值。但是,工作表仅显示第一行,而不是它应该显示的10行 如何将结果返回到不同Google apps script 循环的返回值,google-apps-script,google-sheets,Google Apps Script,Google Sheets,这快把我逼疯了!我试图将一个工作表中的值返回到另一个工作表中 在我的代码中,我记录了详细信息,它们是正确的值。但是,工作表仅显示第一行,而不是它应该显示的10行 如何将结果返回到不同工作表(而不是电子表格)中的特定范围 看起来是个错误的标记,Java不能与Javascript混淆。到目前为止,我的结果只显示了第一行,没有返回它应该返回的10行!你只会在工作表的第二行写。。。不知道为什么您认为这会给您10行数据。不,在这个函数中,你不返回任何东西-你有副作用。您应该使用setValues,而不是使
工作表
(而不是电子表格
)中的特定范围
看起来是个错误的标记,Java不能与Javascript混淆。到目前为止,我的结果只显示了第一行,没有返回它应该返回的10行!你只会在工作表的第二行写。。。不知道为什么您认为这会给您10行数据。不,在这个函数中,你不返回任何东西-你有副作用。您应该使用
setValues
,而不是使用for..in
和Arrays
,并仔细检查迭代索引。。您从不使用行
。
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var source = ss.getSheetByName("config");
var target = ss.getSheetByName("Sheet7");
target.getRange("A1").setValue("Year");
target.getRange("B1").setValue("Start Date");
target.getRange("C1").setValue("Subject");
target.getRange("D1").setValue("Start Time");
target.getRange("E1").setValue("End Date");
target.getRange("F1").setValue("End Time");
target.getRange("G1").setValue("All Day");
target.getRange("H1").setValue("Description");
target.getRange("I1").setValue("Location");
target.getRange("J1").setValue("Sequence");
target.getRange("K1").setValue("TRANSP");
target.getRange("L1").setValue("CLASS");
var sheet = SpreadsheetApp.getActiveSpreadsheet();
SpreadsheetApp.setActiveSheet(sheet.getSheetByName('Sheet7'))
var tab = SpreadsheetApp.setActiveSheet(sheet.getSheetByName('config'))
var numberOfRows = tab.getLastRow();
var firstRow = 1;
var actualData = tab.getRange(18, 1, 10, 2);
var values = actualData.getValues();
var countryfield = tab.getRange(2,8);
var countryname = countryfield.getValues();
var yearfield = tab.getRange(1,8);
var year = yearfield.getValues();
for (var row in values) {
for (var col in values[row]) {
Logger.log(values[row][col]);
target.getRange("A2").setValue(year); //location
target.getRange("B2").setValue((values[col]));
target.getRange("C2").setValue(/*"Darren:" + */(values[col][1]));
target.getRange("D2").setValue('00:00'); //start time
target.getRange("E2").setValue('00:00'); //end date
target.getRange("F2").setValue('23:59'); //end time
target.getRange("G2").setValue('true'); //All Day?
target.getRange("H2").setValue((values[col][1])); //description
target.getRange("I2").setValue(countryname); //location
target.getRange("J2").setValue('0'); //sequence
target.getRange("K2").setValue('OPAQUE'); //transp
target.getRange("L2").setValue('PUBLIC'); //class
}
}
var sheet = SpreadsheetApp.getActiveSpreadsheet();
SpreadsheetApp.setActiveSheet(sheet.getSheetByName('Sheet7'))
}