お仕事おつにゃッス🐈
文系未経験から社内SEになった、あっきょ(@daily_code_JP)です!
スプレッドシートの空白セルを目視で1つずつ確認するのに多大な時間と労力がいりますよね。
GASを使えば空白セルの判定を1クリックで終わらせてしまいます。
この記事ではコピペOKのGoogle Apps Scriptのコードで解決します。
こんな人におすすめ!
- 手動で1つずつ確認しながら空白を見つけるのは面倒
- 1クリックでセルの空白判定する機能が欲しい
- プログラミングでJavaScriptを学んだけど何を作っていいかわからない
誰でも無料で簡単にできますので気軽に学んでいきましょう!
セルの空白判定をするイメージ
GASで空白セルを判定する方法を2つ紹介します。
未記入のセルを見つけ出すことで、数多くのデータから空白のセルを探す時間を省けます。
結果として人的ミスや業務時間の削減や業務効率化を実現できます。
GASでは基礎中の基礎なので覚えておいて損はないッス!
セルの空白判定をする準備
Google Apps Script でスプレッドシートの空白セルを判定する準備をします。
ファイルは1つ必要です。
必要なファイル
- Google スプレッドシート…リストの作成&コードの貼り付け
スプレッドシートの作成
空白セルを判定するスプレッドシートを作成します。
この記事では
- 氏名
- 性別
- 年齢
の3項目を追加します。
3列目の「年齢」の一部のセルを虫食いにして空白判定していきます。
スプレッドシートの準備は以上です。
サンプルコードを貼り付ける場所
サンプルコードはGoogle スプレッドシートにコピペ。
上バーの「拡張機能」の中にある「Apps Script」をクリックしてコードを貼り付けます。
① isBlankメソッドを使って判定する方法
空白判定を行うコードの1つ目はisBlankメソッドを使う方法です。
解説の項目
- isBlank() | 空白セルを判定
- サンプルコード
- A, スプレッドシートの指定
- B, セルの番号の定義
- C, 空白セルを判定
isBlank() | 空白セルを判定
isBlankメソッドはスプレッドシートのセルが空白かどうかを判定するメソッドです。
セルが空白ならTRUE、埋まっているならFALSEのブーリアン型を返します。
引数は不要です。
サンプルコード
isBlankメソッドを用いて空白判定をする場合のサンプルコードです。
コードの右上にあるマークを1クリックですぐにコピペできます。
function searchBlankCells() {
//A, スプレッドシートの指定
const sheet = SpreadsheetApp.getActiveSheet();
//B, セルの番号の定義
const lastRow = sheet.getLastRow();
const SEARCH_COL_NUM = 3;
//C, 空白セルを判定
for(var i=1; i<=lastRow; i++){
const searchCol = sheet.getRange(i, SEARCH_COL_NUM);
if(searchCol.isBlank()){
Logger.log(i+"行目のC列が空白です。");
}
}
}
A, 使用するスプレッドシートの定義
//A.スプレッドシートの指定
const sheet = SpreadsheetApp.getActiveSheet();
アクティブ状態のスプレッドシートを定義します。
B, セルの番号の定義
//B, セルの番号の定義
const lastRow = sheet.getLastRow();
const SEARCH_COL_NUM = 3;
空白を判定するセルの列番号を定義します。
空白ではないセルの最終行の番号を取得します。
空白判定する列はCなので、定数SEARCH_COL_NUMには3と記入します。
最終列を取得する詳細は以下の記事をご参考ください。
C, 空白セルを判定
//C, 空白セルを判定
for(var i=1; i<=lastRow; i++){
const searchCol = sheet.getRange(i, SEARCH_COL_NUM);
if(searchCol.isBlank()){
Logger.log(i+"行目のC列が空白です。");
}
}
3列目にあるセルの空白判定を行います。
isBlankメソッドでセルが空白なら文字をログ出力します。
この処理を最終行の番号に達するまで行います。
② 変数内の空文字を調べる方法
2つ目は変数内に文字が含まれているかどうかを調べて空白判定する方法です。
解説の項目
- サンプルコード
- ①のサンプルコードと異なる点
サンプルコード
getValueメソッドで値を取得して定数searchColが値が存在するかを調べます。
function searchBlankCells() {
//A, スプレッドシートの指定
const sheet = SpreadsheetApp.getActiveSheet();
//B, セルの番号の指定
const lastRow = sheet.getLastRow();
const SEARCH_COL_NUM = 3;
//C, 空白セルを判定
for(var i=1; i<=lastRow; i++){
const searchCol = sheet.getRange(i, SEARCH_COL_NUM).getValue();
if(searchCol === "" || searchCol === null){
Logger.log(i+"行目のC列が空白です。");
}
}
}
①のサンプルコードと異なる点
①と異なるのは「C, 空白セルを判定」のみ。
この箇所で変更したのは2点です。
- 定数searchColにgetValueメソッドを追加
- if文の判定を「””」と「null」に変更
if文の空白判定はJavaScriptでウェブ制作時によく使われるコードを応用しました。
結果は同じなのであなたが使いやすい方を選択しましょう。
セルが空白かを選別するテスト
実際に、GASでセルに値を記入します。
Apps Scriptの上バーの文字が「searchBlankCells」になっていたら、「実行」を押します。
「このアプリはGoogleで確認されていません」と表示した場合はこちら。
画像のようにログ結果がでたら成功です。
一瞬で空白セルを判別できました。
【さらに便利】GASで空白セルを扱う方法一覧
この記事では、空白セルをGASで判定する方法を2つ紹介しました。
GASやスプシを使えば、空白セルをスキップしたり空白セルの行を削除できます。
誰でも無料で簡単にできるのでぜひご活用ください。
もちろん、コピペOKです。
おわりに | GASでさらにスキルアップするには
以上、GASでスプレッドシートの空白セルを判定する方法でした。
そのままコピペして日常業務で使ったり、プログラミングの練習で動かしたりしましょう。
GASで業務効率化や自動化のスキルをアップするには日々の学習が必要不可欠。
GASを効率的に学ぶなら以下の2つの方法が多いです。
- 参考書やオンライン教材で独学
- プログラミングスクールを利用
正しく学ぶことで非エンジニアでも実用的な業務効率化のスキルが身に付きます。
デイコーでは、GASのサンプルコードからおすすめのプログラミングまで幅広く紹介。
初心者にもわかりやすく解説しています。
プログラミングスクールは82社を分析したッス!
次回の記事もご期待ください!
それでは、よいプログラミングライフを!