• 締切済み

GASで文字列を下から検索し2列目から該当列を削除

Google sheetsのGASで特定文字列を下から検索し2列目から該当列までを削除する方法を探しています。 添付図のようにダウンロードするデータに余計な区分が入っており、GASで並べ替えを行うと上に集中するので、その余分な区分の文字を含むセルの最下限の列から2列目を選択範囲にして一気に消したいです 該当の文字列を判定して消す方法だと1列ずつの処理となり、タイムオーバーを吐きまくったので、結果的に余計な列をタイムオーバーを吐かせずに消せる方法ならば何でも良いです よろしくお願いします。

みんなの回答

  • dedypraja
  • ベストアンサー率40% (88/220)
回答No.1

下から特定文字列を検索し、その列から2列目以降を削除するには、以下のGASコードを使用できます。 function deleteColumnsFromLastRow() { var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1"); // Sheet1を変更する var lastRow = sheet.getLastRow(); var searchRange = sheet.getRange(lastRow, 1, 1, sheet.getLastColumn()); // 最後の行の全列を対象とする var searchString = "余分な区分"; // 削除したい文字列を指定する var searchResult = searchRange.createTextFinder(searchString).findPrevious(); if (searchResult) { sheet.deleteColumns(searchResult.getColumn() + 1, sheet.getLastColumn() - searchResult.getColumn()); // 検索結果の列から2列目以降を削除する } } このコードでは、最後の行を取得し、その行から全列を検索対象とします。次に、指定された文字列を検索し、最後に見つかった列から2列目以降を削除します。削除する列が見つからない場合は何も行いません。この方法で、余分な区分の文字列を含む列から2列目以降を一括で削除することができます。

GASFling
質問者

補足

すいません行と列を間違えてました あと手動か自動かは分かりませんがchatGPTで質問しても出なかったので、聞いています 一旦締め切らせて頂いて再度質問あげさせていただきます