お仕事おつにゃッス🐈
文系未経験から社内SEになった、あっきょ(@daily_code_JP)です!
膨大なリストの中から空白セルを見つけて、データを入力するのは時間がかかりますよね?
この記事ではそのお悩みを、コピペOKのGoogle Apps Scriptのコードで解決します。

- データの登録と管理に費やす時間と労力を減らしたい
- 簡単1クリックで自動で空白のセルに入力したデータを登録したい
- プログラミングでJavaScriptを学んだけど、何を作っていいかわからない
誰でも無料で簡単にできますので、お気軽に学んでいきましょう!
タップできる目次
入力したデータを別シートに自動登録する完成イメージ

「登録」シートに入力したデータを1クリックで「リスト」シートに自動登録するツールを作ります。
あなたが仮に数百や数千のデータを扱うときは、空白行を探すのは非常に時間がかかります。
また、データの上書きをしてしまうミスも考えられるでしょう。
このツールでは、上書きミスをなくしつつ入力時間を減らす目的で開発していきます。
別シートに登録する準備
スプレッドシートでデータを管理する準備をします。ファイルは1つ必要です。
必要なファイル
- Google スプレッドシート ・・・ データの編集と保存 & GASのプログラムの実行
Google スプレッドシートの作成
Google スプレッドシートを作成していきます。
赤丸で囲んだ十字アイコンをクリックしてシートを1つ追加し、計2つ用意します。シート名をそれぞれ「登録」と「リスト」に変更します。

2つのシートには、それぞれ4項目を記入します。
項目 | 詳細 |
苗字 | シートに登録する顧客の苗字 |
名前 | シートに登録する顧客の名前 |
年齢 | シートに登録する顧客の年齢 |
性別 | シートに登録する顧客の性別 |
「登録」シートを編集します。A2からA5まで4項目を入力していきます。B列に登録する顧客のデータを記入します。

「リスト」シートを編集します。1行目に4項目を入力します。2行目以降に「登録」シートで入力したデータを転記します。
スプレッドシートの準備は以上です。

サンプルコードを貼り付ける場所
サンプルコードはGoogle スプレッドシートにコピペします。
上バーの「拡張機能」の中にある「Apps Script」をクリック。ここにコードを書きます。

別シートに登録するサンプルコード
GASで別シートにデータを転記するサンプルコードの公開と解説をしていきます。
解説の項目
- サンプルコード
- A, 使用するシートを定義
- B, 「登録」シートから記入したデータを取得
- C,「リスト」シートの空白セルに転記
サンプルコード
右上にあるマークを押すとコードのコピペが一瞬でできます。また、コード内で文頭にアルファベットが付いているコメントごとに詳細を説明していきます。
function registerDataToList(){
//A.使用するシートを定義
const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
const registerSheet = spreadSheet.getSheetByName('登録');
const listSheet = spreadSheet.getSheetByName('リスト');
const writingRow = listSheet.getLastRow() + 1; //すでにセル内にあるデータを上書きしないように1を足す
//B.「登録」シートから記入したデータを取得
const firstName = registerSheet.getRange("B2").getValue(); //苗字
const lastName = registerSheet.getRange("B3").getValue(); //名前
const age = registerSheet.getRange("B4").getValue(); //年齢
const seibetsu = registerSheet.getRange("B5").getValue(); //性別
//C.「リスト」シートの空白セルに転記
listSheet.getRange("A" + writingRow).setValue(firstName);
listSheet.getRange("B" + writingRow).setValue(lastName);
listSheet.getRange("C" + writingRow).setValue(age);
listSheet.getRange("D" + writingRow).setValue(seibetsu);
}
A, 使用するシートを定義
//A.使用するシートを定義
const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
const registerSheet = spreadSheet.getSheetByName('登録');
const listSheet = spreadSheet.getSheetByName('リスト');
const writingRow = listSheet.getLastRow() + 1; //「リスト」シートに登録時、セル内に既にあるデータを上書きしないよう1を足す
「登録」シート、「リスト」シートの2つを定義します。
定数 writingRow は「リスト」シート内のセルに値を転記する行番号です。
「最終列の番号 + 1」 と表現することでセル内の値を上書きすることなく、空白セルに登録することができます。
B, 「登録」シートから記入したデータを取得
//B.「登録」シートから記入したデータを取得
const firstName = registerSheet.getRange("B2").getValue(); //苗字
const lastName = registerSheet.getRange("B3").getValue(); //名前
const age = registerSheet.getRange("B4").getValue(); //年齢
const seibetsu = registerSheet.getRange("B5").getValue(); //性別
「登録」シートに入力した値を getValueメソッドでそれぞれ取得します。
C,「リスト」シートの空白セルに転記
//C.「リスト」シートの空白セルに転記
listSheet.getRange("A" + writingRow).setValue(firstName);
listSheet.getRange("B" + writingRow).setValue(lastName);
listSheet.getRange("C" + writingRow).setValue(age);
listSheet.getRange("D" + writingRow).setValue(seibetsu);
「登録」シートから取得したデータを 「リスト」シートの空白のセルに転記します。
setValueメソッドでセルにそれぞれの値を記入します。サンプルコードの説明は以上です。
別シートに登録するプログラムの実行
作成した関数を実際に動かして、シートに登録できるか確認してみましょう。
「登録」シートのB列にデータをそれぞれ入力します。

Apps Scriptの上バーの文字が「registerDataToList」になっていたら「実行」を押します。

「このアプリはGoogleで確認されていません」と表示される場合はこちら。
-
【3分で解決】GASの「このアプリはGoogleで確認されていません」を許可する方法
続きを見る
「リスト」シートに移動すると入力したデータが転記できています。

【便利】検索機能と組み合わせて業務をさらに効率化
この記事では別シートに自動登録するコードを紹介しました。
登録した数百数千のデータを検索するのは非常に面倒です。
しかし、GASを使えば検索時間を大幅に減らせるオリジナルツールを開発できます。
当サイトではコピペOKの検索用コードを紹介しているので、ぜひご活用ください!
-
【5分で解決】GASで文字列を検索する2つのサンプルコード
続きを見る
-
【3分で完成】GASで検索結果をスプレッドシートに一覧表示
続きを見る
おわりに | ミスを減らして残業も減らそう!
以上がGoogle Apps Scriptでデータを入力して別シートのリストに登録する方法でした。
そのままコピペして日常業務で使いやすいように改修したり、プログラミングの練習や動作確認用に使ってみましょう。
GASでさらに業務効率化したい場合、参考書やプログラミングスクールを使うとあなた自身でアプリを作るスキルが身に付きます。
プログラミング未経験者にもわかりやすく解説しています。
GASユーザーのあっきょがおすすめの勉強方法はこちら↓

次回の記事もご期待ください!