Javascript 如何使用文件名从google spreasheet复制数据,并将其粘贴到另一个文件中?
我试图使用文件名从电子表格中获取数据,并将数据复制到不同的目标文件中。我有以下代码,它在第7行失败。当我在第7行手动输入一个ID时,代码就起作用了。有人能帮忙吗?多谢各位Javascript 如何使用文件名从google spreasheet复制数据,并将其粘贴到另一个文件中?,javascript,google-apps-script,Javascript,Google Apps Script,我试图使用文件名从电子表格中获取数据,并将数据复制到不同的目标文件中。我有以下代码,它在第7行失败。当我在第7行手动输入一个ID时,代码就起作用了。有人能帮忙吗?多谢各位 function openFile() { var fileList = DriveApp.getFilesByName('file name') while (fileList.hasNext()) { Logger.log(fileList.next().getId()) } var fileID = Logg
function openFile() {
var fileList = DriveApp.getFilesByName('file name')
while (fileList.hasNext()) {
Logger.log(fileList.next().getId())
}
var fileID = Logger.getLog();
var ss = SpreadsheetApp.openById(fileID);//fails here
var source = ss.getSheetByName('sheet name');
var rangeSource = source.getDataRange();
var data = rangeSource.getValues();
var rowsInData = data.length;
var colsInData = data[0].length;
var sss = SpreadsheetApp.openById('1Hia3_zGk1qyPlVuPTQR5iOjExFaMEe3EQOMXBc2C6eI');
var logSheet = sss.getSheetByName("diamondbackprogress");
var rowsInLogSheet = logSheet.getMaxRows();
var colsInLogSheet = logSheet.getMaxColumns();
if (rowsInLogSheet < rowsInData) {
logSheet.insertRowsAfter(rowsInLogSheet, rowsInData - rowsInLogSheet);
} else if (rowsInLogSheet > rowsInData) {
logSheet.deleteRows(rowsInData, rowsInLogSheet - rowsInData);
}
if (colsInLogSheet < colsInData) {
logSheet.insertColumnsAfter(colsInLogSheet, colsInData - colsInLogSheet);
} else if (colsInLogSheet > colsInData) {
logSheet.deleteColumns(colsInData, colsInLogSheet - colsInData);
}
logSheet.getRange(1, 1, rowsInData, colsInData).setValues(data);
}
函数openFile(){
var fileList=DriveApp.getFilesByName('文件名')
while(fileList.hasNext()){
Logger.log(fileList.next().getId())
}
var fileID=Logger.getLog();
var ss=SpreadsheetApp.openById(fileID);//此处失败
var source=ss.getSheetByName('sheet name');
var rangeSource=source.getDataRange();
var data=rangeSource.getValues();
var rowsInData=data.length;
var colsInData=data[0]。长度;
var sss=SpreadsheetApp.openById('1Hia3_zgk1qyplvuptqr5iojexfamee3eqomxbc6ei');
var logSheet=sss.getSheetByName(“diamondbackprogress”);
var rowsInLogSheet=logSheet.getMaxRows();
var colsInLogSheet=logSheet.getMaxColumns();
if(行日志表<行数据){
日志表。插入rowsafter(rowsInLogSheet,rowsInData-rowsInLogSheet);
}else if(行日志表>行数据){
删除行(rowsInData,rowsindogsheet-rowsInData);
}
if(colsInLogSheetfunction openFile() {
var fileList = DriveApp.getFilesByName('file name')
while (fileList.hasNext()) {
Logger.log(fileList.next().getId())
}
var fileID = Logger.getLog();
为此:
function openFile() {
var fileList = DriveApp.getFilesByName('file name')
while (fileList.hasNext()) {
var fID = fileList.next().getId();
}
var fileID = fID;
我想它应该返回文件的id。这不对吗?很抱歉,这是一个新问题,,,让我知道我的答案是否对你有效。是的,非常有效,非常感谢!!对此我很高兴。