シート内の「何も書き込まれていない行」を削除してくれるGoogle Apps Scriptです。スプレッドシートをメモ帳代わりにしていると、特に意味のない空白行がたくさんあったりして、消すのが面倒だったので作成してみました。すべての列に何も文字が入っていない行を消し去ります。
特にありません。今お使いのスプレッドシートに組み込めます。
空行を含むものをテストデータとして用意しました。
空行が不要なので、スクリプトを実行します。メニューから「空の行を削除する」を実行します。
少し待つと、空行が削除されてきれいに並びます。
/**
* このスクリプトの説明、使い方はこちら。
* https://myfunc.jp/items/00037/index.html
*/
function onOpen() {
// スプレッドシートを開いたときに実行される関数
// UIの取得
const ui = SpreadsheetApp.getUi()
// メニューの表示名
const menu = ui.createMenu('スクリプト実行');
// メニューに追加するボタン
menu.addItem('空の行を削除する', 'delete_blank_lines');
// メニューを画面に追加する
menu.addToUi();
}
function delete_blank_lines() {
// アラートを表示するためにUIを取得
const ui = SpreadsheetApp.getUi();
// アクティブなスプレッドシート、シートを取得
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// シート内でデータが入力されている範囲を取得
let range = sheet.getRange(1,1,sheet.getLastRow(), sheet.getLastColumn());
// セルの値を取得
const values = range.getValues();
// 空行を除いた二次元配列を格納する変数を準備
let result = [];
// 取得した全セルのデータをループして文字が入っているかどうか確認する
for(let i = 0; i < values.length; i++){
if(values[i].join('').length > 0){ //全セルを連結してその文字数を調べる
result.push(values[i]); //1文字以上あれば、結果の配列に追加する
}
}
// 今書きこまれている値を削除する
range.clear();
// 改行を除去した二次元配列を書き込む準備。書き込み範囲を設定する
range = sheet.getRange(1,1,result.length, result[0].length);
// セルへ値の書き込み
range.setValues(result);
}
選択した2つのセル(範囲)の値を、入れ替えるGoogle Apps Scriptです。行や列の入れ替えもできます。
選択した行範囲の順番を逆にするGoogle Apps Scriptです。ソートではなく、単純に順番を逆にします。関数の組み合わせでも実現できますが、GASを登録してしまったほうが早いかもしれません。
選択した列範囲の順番を逆にするGoogle Apps Scriptです。行バージョンを作ったので、列バージョンも。ニーズはあるのでしょうか。
選択した行および列範囲の順番を逆にするGoogle Apps Scriptです。これは本当に使い所があるのかわかりませんが、作ってみたので公開します。
1つのセルに入力されている文字列を、指定した文字数で分割するGoogle Apps Scriptです。区切りに使用する文字が無くても大丈夫です。行方向に分割します。
1つのセルに入力されている文字列を、指定した文字数で分割するGoogle Apps Scriptです。区切りに使用する文字が無くても大丈夫です。列方向に分割します。
選択範囲に存在する結合されたセルを検索し、解除することもできるGoogle Apps Scriptです。予想外の結合によって困ったことがある方は多いと思います。このアプリが転ばぬ先の杖になれば幸いです。結合を解除するかどうかはダイアログで選択できます。
検索キーワードを全シートから探して、ヒットしたセル番地をまとめて表示するGoogle Apps Scriptです。標準の検索機能ではヒットしたセルが1個ずつ分かりますが、まとめて知りたくなったので作成しました。
選択範囲に改行が含まれているセルを検索し、削除することもできるGoogle Apps Scriptです。想定外の改行によって困ることが稀によくありますので作ってみました。改行を削除するかどうかはダイアログで選択できます。
1行ごとに任意の空白行を挿入してくれるGoogle Apps Scriptです。データを整理中に「今ある行の間に1行ずつ足したい・・・」ということが稀によくあるので作成しました。追加する行数はプロンプトで指定が可能です。
シート内に存在するハイパーリンク(URL)を取り出すGoogle Apps Scriptです。リンクを全て抜き出したくなったので作成してみました。
スプレッドシートの不要な行を削除するGoogle Apps Scriptです。行がいつの間にか数万行に増えてしまっている・・・よくありますよね。
2つの列を指定し、すべての組み合わせを出力してくれるGoogle Apps Scriptです。列はプロンプトで指定するので繰り返せば何列でも組み合わせることができます。