ご訪問ありがとうございます。
Googleシートマスターのひろしです。
前回
【GAS】非表示の行を一気に削除する方法(Gスプレッドシート)
GASを使用して
非表示の行を一気に削除できます。
降順のループの使い方がわかります。
今回は、とっても価値の高い方法をお伝えします。
これを知ることであなたは、
- チェックボックスの値の取得方法がわかります。
- チェックされた行を一気に削除する方法がわかります。
なので、サクッとマスターして
と答えてあげてください。
ご質問
こんばんは〜
今回非表示の行を削除ということでしたが、 業務で案件管理のシートがあって、 1行に要件や進捗状況、対応者名などの項目があり、例えばI列にチェックボックスを設定しておき、業務が完了したらチェックを入れ、チェックが入った行をグレーアウトするようにした場合、 その日の業務が完了したら、グレーアウトした業務のみを削除したい場合のGASコードはどうなりますか? 完了と入力(またはチェックボックスにチェク)
質問文が長くややこしそうなので、一旦質問を閉じてしまいました。
でも、よく読むと単に、チェックされた行を削除すれば良さそうです。
であれば、簡単なのでやってみました。
動画はこちら
シートはこちら
*クリックすることでシートが開きます。(コピーしてお使いください)
スクリプト
//チェックされた行の削除
function delckline() {
const CKPOS = 1 //チェックボックスの位置(列) A→1,B→2,,,
const ss = SpreadsheetApp.getActiveSpreadsheet()
const sh = ss.getActiveSheet()
for (i = sh.getLastRow(); i > 0; i--) {
if (sh.getRange(i, CKPOS).getValue()) { //チェックされていたら
console.log(sh.getRange(i, CKPOS).getValue(), i, "行目 削除")
sh.deleteRow(i) //行の削除
}
}
}
チェックする列を変更する場合は、CKPOSを変更すればOKです。
例)A列→1,B列→2
今回のスクリプトはなかなかニーズがあるのではないでしょうか?
質問者さまありがとうございました。
最後までご覧いただきありがとうございます。
つぎはこちら
【GAS】チェックされた行を一気に非表示にする方法
コメント