2022/02/21に更新

【GASで時短】スプレッドシートを一発で方眼紙にする

スプレッドシート

職場によっては使用が強制されていたり、逆に禁止されていたりする「方眼紙」を作成するGoogle Apps Scriptです。

こんな悩みを解決します


  • 職場の方針でスプレッドシートを方眼紙にする必要があるが、毎回設定するのが面倒なので自動化したい。

用意するもの


特にありません。今お使いのスプレッドシートに組み込めます。

このスクリプトで出来ること


現在開いているシートの縦横の幅を変更し、方眼紙にすることが出来ます。
升目のサイズはダイアログボックスで自由な値が指定可能です。

使い方


1.スクリプトの実行

上のメニューに有る「スクリプト実行」から「方眼紙を作成する」を実行します。

2.サイズの指定(小さめ)

方眼紙のサイズを指定します。20前後の値が使いやすいサイズだと思いますが、10を指定してみます。

3.結果の確認

非常に細かい升目の方眼紙が作成されました。

4.サイズの指定(大きめ)

今度は巨大な升目を作るために「300」を入力してみます。

5.結果の確認

非常に大きなセルになりました。

6.エラーメッセージ

ダイアログボックスで入力できる値は、1〜300の間に制限しています。
この範囲外の数値を入力すると「方眼のサイズは1〜300の間で指定してください」というエラーメッセージが表示され、スクリプトが終了します。

スクリプト


/**
 * このスクリプトの説明、使い方はこちら。
 * https://myfunc.jp/items/00047/index.html
 */

function onOpen() {
  // スプレッドシートを開いたときに実行される関数

  // UIの取得
  const ui = SpreadsheetApp.getUi();

  // メニューの表示名
  const menu = ui.createMenu('スクリプト実行');

  // メニューに追加するボタン
  menu.addItem('方眼紙を作成する', 'set_hoganshi');

  // メニューを画面に追加する
  menu.addToUi();
}

function set_hoganshi() {

  // UIの取得
  const ui = SpreadsheetApp.getUi()

  // アクティブなスプレッドシート、シートを取得
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  // 方眼紙のサイズを入力させる
  const input = ui.prompt('方眼のサイズを入力してください(20前後がおすすめ)', ui.ButtonSet.OK_CANCEL);

  // キャンセルが押されたらスクリプトを終了する
  if (input.getSelectedButton() == ui.Button.CANCEL) {
    return;
  }

  // 入力された方眼のサイズを取得する
  const masu_size = input.getResponseText();

  // 過度に大きい、小さいサイズは受け付けない
  if(masu_size > 300 || masu_size < 1){
    ui.alert('方眼のサイズは1〜300の間で指定してください');
    return;
  }

  // 横、縦のサイズを指定する
  sheet.setColumnWidths(1,sheet.getMaxColumns(),masu_size);
  sheet.setRowHeights(1,sheet.getMaxRows(), masu_size);

}

関連するアプリ


【GASで便利に】セルの順番を逆にする(行)

選択した行範囲の順番を逆にするGoogle Apps Scriptです。ソートではなく、単純に順番を逆にします。関数の組み合わせでも実現できますが、GASを登録してしまったほうが早いかもしれません。

【GASで便利に】セルの順番を逆にする(列)

選択した列範囲の順番を逆にするGoogle Apps Scriptです。行バージョンを作ったので、列バージョンも。ニーズはあるのでしょうか。

【GASで便利に】セルの順番を逆にする(行と列)

選択した行および列範囲の順番を逆にするGoogle Apps Scriptです。これは本当に使い所があるのかわかりませんが、作ってみたので公開します。

【GASで便利に】指定した文字数でセルに分割する(行方向)

1つのセルに入力されている文字列を、指定した文字数で分割するGoogle Apps Scriptです。区切りに使用する文字が無くても大丈夫です。行方向に分割します。

【GASで便利に】指定した文字数でセルに分割する(列方向)

1つのセルに入力されている文字列を、指定した文字数で分割するGoogle Apps Scriptです。区切りに使用する文字が無くても大丈夫です。列方向に分割します。

【GASで時短】複数セルの中身を1セルにまとめる

選択されたセル範囲のテキストを、1つのセルにまとめるGoogle Apps Scriptです。セルを分けて色々書き込んだけど、1セル内に改行して入力するんだった・・・!というときに使えるかも。

【GASで時短】選択範囲のデータをCSVで出力する

スプレッドシートの選択している範囲だけをCSVで出力するGoogle Apps Scriptです。CSVで出力したい・・・けどシート全体をCSVでダウンロードするのは面倒という方へ。

【GASで時短】スプレッドシートを一発で方眼紙にする

職場によっては使用が強制されていたり、逆に禁止されていたりする「方眼紙」を作成するGoogle Apps Scriptです。

タグ一覧

最新のアプリ

人気のアプリ

myfunc.jp