第3章 ケーススタディ:月次の売上表を整える ・ MISSION 10

ミッション10:空白行を下から消す

📋 ミッション一覧

お題

貼り付けた10月の明細に空白行が混ざっている。空白行をすべて消そう。行を消すと下の行が上に詰まるので、下の行から順に見ていく。

10月の売上 - Google スプレッドシート
10月の売上

練習のため、実行するたびに表は最初の状態に戻ってから動きます(本物のスプレッドシートでは戻りません。スクリプトの変更は Ctrl+Z で戻せることもありますが、まとめては戻せません)。

Apps Script無題のプロジェクトデプロイ ▾
function deleteBlankRows() {
const sheet = SpreadsheetApp.getActiveSheet();
for (let row = sheet.getLastRow(); row >= 2; row) {
if (sheet.getRange(row, 1).getValue() === ) {
sheet.(row);
}
}
}
Ctrl+S: 保存 ・ Ctrl+R: 実行(エディタ) ・ F5: 開き直す

第3章 スタートケーススタディ:月次の売上表を整える

第3章 ・ MISSION 10

空白行を下から消す

貼り付けた10月の明細に空白行が混ざっている。空白行をすべて消そう。行を消すと下の行が上に詰まるので、下の行から順に見ていく。

いま
ゴール

コードの読み方

for (let row = sheet.getLastRow(); row >= 2; row--) {
最後の行から 2 行目まで、row を1ずつ減らしながらくり返す。
if (sheet.getRange(row, 1).getValue() === '') {
A 列が空('')なら。=== は「型まで同じか」を比べる。
sheet.deleteRow(row);
row 行目を消す。下の行が上に詰まる。

行を消すと下の行が1つずつ上に詰まる。上から消していくと、詰まってきた行を飛ばしてしまう。下から上へ進めば、まだ見ていない行の番号は変わらない。行を消す・足す処理は下からが基本。

GAS の始め方とよく使う書き方は、記事にまとめています。GAS とは? 始め方とよく使う書き方

書いたコードは、このページの中の隔離した場所で動きます。ページの外やほかのサイトには届きません。

※ Google スプレッドシートと Apps Script の挙動を模擬的に表現したものであり、本来の挙動と一部異なる可能性があります。

※ Google スプレッドシートは Google LLC の商標です。当サイトは Google とは関係ありません。