-1
Array内のrowの値を変更したい場合、Array内の行の値を変更したい場合は、前の行と同じresidentと同じ投薬を使用します。なぜgoogleシートスクリプトは私がそれを変更したくない行を変更するのですか?
//check if something from one time per day
if (startTime[resMedVals[resMedRow][3]]){
medPlan[lastRow].push(startTime[resMedVals[resMedRow][3]]+":00");
}else{
medPlan[lastRow].push("More")
}//end if time
そして、それは「もっと」の値で背中やお得な情報行く:その場合、デフォルト値は「詳細」を設定する - それがタスクを繰り返している場合
最初はそれが見えます。初めてタスクを繰り返す場合は、最初の開始時間値を設定します。繰り返す場合は、必要な数だけ行をコピーします。
//if more times per day medicine, then replicate tasks
if(medPlan[lastRow][9]== "More"){
var timesToReplicate = medPlan[lastRow][5].charAt(0)
for(var i=0; i < timesToReplicate; i++){
if (i==0){
//first time
medPlan[lastRow][9] = workDay["start"]
medPlan[lastRow][9] += ":00"
}else{
//add entire last entire row
medPlan.push(medPlan[medPlan.length-1]);
}//end if else first time
この部分まですべて正常に動作します。
次に、繰り返される(そして最初ではない)値に異なる値を設定します。
//adjust More values to appropriate starting times
for (var med=1; med < medPlan.length; med++){
if(medPlan[med][2] == medPlan[med-1][2] && medPlan[med][1] == medPlan[med-1][1]){
Logger.log(med)
var interval = Math.floor(workingHours/medPlan[med][5].charAt(0));
medPlan[med][9] = interval
}//end if the same medication and the same resident
}//end for medPlan
ただし、ログには正しい行があることが示されていますが、繰り返しタスクの最初の行も変更されます。
すべてのヘルプははるかに高く評価します!
実際にシートに値を設定するコードを投稿できますか? –