如果目标工作表上的A4值与源表中A列中的值相对应,我试图找出如何将行从一个工作表写入另一个工作表。但是,我只需要复制最后19列,并且不需要前面的列。我知道如何复制想要的行,但条件似乎是一个常量值,而不是一个值,它改变了目标表中的每一行(因此A4值不同于A5,A6等)我采取了一些从我的工作表中的功能,并将其复制到这里。
function getPDdataupper() {
var sheet = SpreadsheetApp.getActive().getSheetByName('SPR');
var folder= DriveApp.getFolderById('Folder-id');
var files = folder.getFilesByType(MimeType.GOOGLE_SHEETS);
while (files.hasNext()) {
var ssraw = SpreadsheetApp.open(files.next());
}
sheet.getRange(11,1,(sheet.getLastRow())-10,53).clearContent();
var sheetraw = ssraw.getSheetByName("SPR");
var sheetl=SpreadsheetApp.getActive().getSheetByName('single line data1')
var data = sheetl.getDataRange().getValues();{
var val = new Array();
for(n=0;n<data.length;++n){
if (data[n][1]=="'SPR'!A4");{
val.push([[data[n][24]], [data[n][25]], [data[n][26]], [data[n][27]], [data[n][28]], [data[n][29]], [data[n][30]], [data[n][31]],
[data[n][32]], [data[n][33]], [data[n][34]], [data[n][35]], [data[n][36]], [data[n][37]], [data[n][38]], [data[n][39]], [data[n][40]], [data[n][41]], [data[n][42]], [data[n][43]]]);
}
}
sheet.getRange(7,35,1,1).setValues(val);
}
}
如果有人可以帮助我找到正确的方向,让每一行都改变条件,那么它就会检查一下。此外,我不确定我现在是否可以使用数组,或者我是否必须使用Appendrow。
谢谢, 添
答案 0 :(得分:0)
看看这个:
PULLING SPREADSHEET DATA: NO SCRIPTS REQUIRED
一旦你弄清楚了你的功能需要做什么,如果你在一个单元格中尝试它会收到错误,所以请按照以下步骤操作:
想象一下你的全部功能是这样的:
=QUERY(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1E5-hvA-Lw-BpYWhYf8Ib7u78oevW3789Z8m1vQ8HU/edit#gid=537281810","Sheet1!A3:R800"), "Select Col1, Col2, Col3, Col4, Col5, Col6, Col7, Col8, Col9, Col10, Col11, Col12, Col13, Col14, Col15, Col16, Col17, Col18 where Col3 ='Late'")
第1步:写入您希望导入数据的第一个单元格:
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1E5-hvA-Lw-BpYWhYf8Ib7u78oevW3789Z8m1vQ8HU/edit#gid=537281810","Sheet1!A3:R800")
您会在单元格中看到错误,如果您将鼠标移到它上面,则会得到“您需要连接这些表单”。所以你按“允许访问”
第二步:添加/完成函数中缺少的内容(如上例所示(= QUERY(等等。选择Col1,Col2,Col3等...)
希望这有帮助