[英]Sheet Names stored in array, Google Apps Script only Accessing first two
我一直在使用Google Apps腳本和電子表格來創建可監視一組股票的電子表格。 我已為每只股票分配了自己的工作表,並設置了帶有日觸發器的功能,以便它每天刷新所有信息。 我花了很多時間進行大量調試,最后使它在前兩張紙上都能正常工作。 我現在又添加了3個,它對他們沒有任何幫助。
function XMLDATAONDAY() {
for (r=0;r<5;r++){
var ss=SpreadsheetApp.getActiveSpreadsheet()
var sheets= ["HSY","AAPL","CENX","MSFT","TSLA"]
var sheet=ss.getSheetByName(sheets[r])
var i=14
var dateSrc=sheet.getRange(2,5)
var stockPrice = sheet.getRange(5,4).getValue()
var displayCell= sheet.getRange(2,4)
var date = dateSrc.getValue()
SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1IOBQpdUr0fq_clie-0AOnCAN87qTy9Yn1h79akMJ7uc/edit#gid=0');
for (i=14;i<366;i++) {
var sheets= ["HSY","AAPL","CENX","MSFT","TSLA"]
var stockCell=sheet.getRange(i,2)
var dateCell=sheet.getRange(i,1)
if(stockCell.getValue()== ""){
sheet.getRange(14,1).copyFormatToRange(sheet, 1, 1, i, i)
sheet.getRange(14,2).copyFormatToRange(sheet, 2, 2, i, i)
dateCell.setValue(date);
stockCell.setValue(stockPrice);
i=400;
}
}
}
}
這可能只是我所忽略的,但是我似乎什么也找不到。
這行:
i=400;
應該可能更改為:
break;
我猜您正在將i
設置為400,以停止運行下一個循環?
sheets
有重復的變量分配。 這是一個數組文字。 只定義一次,並將其放在for
循環之外。 將ss
的變量賦值也放在循環之外。 如果不為r
分配語句,則代碼仍將運行,沒有明顯的區別,但是如果沒有var
語句,則變量將在全局范圍內定義。
通過URL打開電子表格的聲明沒有任何作用。 它沒有分配給變量,所以我不確定該行的用途。
function XMLDATAONDAY() {
var sheets= ["HSY","AAPL","CENX","MSFT","TSLA"];
var ss=SpreadsheetApp.getActiveSpreadsheet();
var r=0;
for (r=0;r<5;r++){
var sheet=ss.getSheetByName(sheets[r])
var i=14
var dateSrc=sheet.getRange(2,5)
var stockPrice = sheet.getRange(5,4).getValue()
var displayCell= sheet.getRange(2,4)
var date = dateSrc.getValue()
//SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/sheet_ID_HERE/edit#gid=0');
for (i=14;i<366;i++) {
var stockCell=sheet.getRange(i,2)
var dateCell=sheet.getRange(i,1)
if(stockCell.getValue()== ""){
sheet.getRange(14,1).copyFormatToRange(sheet, 1, 1, i, i)
sheet.getRange(14,2).copyFormatToRange(sheet, 2, 2, i, i)
dateCell.setValue(date);
stockCell.setValue(stockPrice);
break;
}
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.