i
とj
で表される両方の値をgetSheetByName
関数に取得するにはどうすればよいですか?
免責事項:私はコーディングがまったく新しいので、おそらく間違った質問をしています。私の目標は、Week 1、Week 2などのシート名をループして、シートを自動的に削除する単純なコードを作成することです。
これまでの私のコードは次のとおりです。
function myFunction() {
var sheet = SpreadsheetApp.getActiveSpreadsheet()
var i = "Week "
var j = 32
var mysheet = sheet.getSheetByName(i&j)
sheet.deleteSheet(mysheet)
}
コードにi&j
を記述しましたが、これはGoogleアプリのスクリプトで連結する構文ではありません。代わりに、単にi + j
を使用できます。ループには、for、while、do-whileなどのループを使用する必要があります。
これらの提案を組み合わせて、ここに私の最後の提案があります。
このようなことを試してみてください[ここで 'try'を使用すると、単にコピーアンドペーストして使用しないでください。特定のニーズに合わせてキュレーションされた独自のコードを理解して記述してください。おそらくそのように、私たちはさらに成長/学習するでしょう]
function myFunction() {
var START_WEEK = 1; //Put your starting week count here
var END_WEEK = 2; //Put your ending week count here
var spreadSheet = SpreadsheetApp.getActiveSpreadsheet()
var pre_name = "Week"
var i;
for (i = START_WEEK; i <= END_WEEK; i++) {
try {
spreadSheet.deleteSheet(spreadSheet.getSheetByName(pre_name + " " + i))
} catch (exp) {
//Maybe sheet with that name is not found
Logger.log(exp.toString());
}
}
}
このコードは、名前が"Week "
で始まり、その後に週数が続き、最後の週数まですべてのシートをループし、見つかった場合は削除します。
START_WEEK
とEND_WEEK
を正しく入力してください。
これで問題が解決しない場合や、クエリがある場合はお知らせください。
ありがとう