見出し画像

【スプレッドシート】枠線削除・外枠線付与のショートカットキー紹介と覚え方

Googleスプレッドシートで「枠線削除・外枠線を付与」するショートカットキーと覚え方とおまけのコピペGASを紹介します。今回のGASはオススメですぜ

ショートカットでセルの枠線削除・外枠線を付与してる様子

スプレッドシートに枠線削除・外枠線付与のショートカットキーMac / Win 各2種類

■ Mac
1. 枠線削除:Option + Shift + 6
2. 外枠線付与:Option + Shift + 7

スプレッドシート × Macの枠線削除・外枠線付与するショートカット

■ Windows
1. 枠線削除:Alt + Shift + 6
2. 外枠線付与:Alt + Shift + 7

スプレッドシート × Winの枠線削除・外枠線付与するショートカット

シートの上枠線・右枠線・下枠線・左枠線を付与するショートカットキーはこちら↓(コピペGASも載せてます)

1. 枠線を削除するショートカットキー

外枠線の削除を実行している様子
  • Mac: Option + Shift + 6

  • Win:Alt + Shift + 6

覚え方
Shift = 四角形(しかくけい)
6 = 6で(四角を)グルっと削除と覚えられる。
※ 時計回りで四角形ができるイメージ

グルっと削除と覚える

2. 外枠線付与するショートカットキー

外枠線の付与を実行している様子
  • Mac: Option + Shift + 7

  • Win:Alt + Shift + 7

覚え方
Shift = 四角形(しかくけい)
7 = 7は旗のように四角を囲む
※ 時計回りで四角形ができるイメージ

旗を連想して覚える

重要な注意点2つ.

1.外枠付与は複数セルの外枠が付与される

連続する複数セル3つを選択した場合、「Option + Shift + 7(Win:Alt + Shift + 7)」を押下すると複数セルの外枠に付与されます。セル3つ分の枡目に枠線が付与されないことに注意です。

ちょっと意味が分からないと思うのでGIFで↓

セル3つの外枠に線が付与される様子

2.枠線削除は複数セルの全ての罫線が削除される

複数セルを選択して枠線削除をすると選択セルに付与されている罫線全てが削除されます。意図しないセルの罫線も全て削除されてしまうことに注意です。

いやこれ注意点というよりメリットじゃない...?

複数セルの枠線を一括削除してる様子

おまけ. 外枠線付与・枠線削除をカスタムメニューから一発で操作するGAS

外枠線付与・枠線削除をカスタムメニューから一発で操作するGASを紹介します。

枠線付与して削除をGASで実行してる様子

上記GIFは空白セルに枠線付与していますが、もちろんテキストや値が入っている状態でも枠線付与実行できます。カスタムメニューから枠線削除・枠線スタイル・外枠スタイルを選択することで操作が可能です。

  • 枠線削除…選択範囲のすべての罫線を削除

  • 枠線スタイル…選択範囲に対して格子状に罫線付与

  • 外枠スタイル…選択範囲に対して外枠のみ罫線付与

枠線のstyle各種は4種、付与しているstyleは以下のとおりです。

  1. 通常枠のstyleはSOLID

  2. 太枠のstyleはSOLID_THICK

  3. 点線のstyleはDASHED

  4. 二重線のstyleはDOUBLE

自分でいうのもあれですが、直感的に枠線付与ができて現実的に使えるGASになったなと。面白いのでぜひ使ってみてください。

GASのカスタムメニューの作り方

スプレッドシートのメニューから拡張機能 → Apps Script を選択し、下記コードをコピペ・上書き保存することで、カスタムメニューが作成できます。

function onOpen() {
  const ui = SpreadsheetApp.getUi();
  const menu = ui.createMenu('【カスタムメニュー】');
  
  // 枠線のスタイル(サブメニュー)
  const borderMenu = ui.createMenu('枠線スタイル')
    .addItem('枠線', 'applyCellBordersSolid')
    .addItem('枠線太', 'applyCellBordersThick')
    .addItem('枠線点線', 'applyCellBordersDashed')
    .addItem('枠線二重', 'applyCellBordersDouble');
  
  // 外枠のスタイル(サブメニュー)
  const outerBorderMenu = ui.createMenu('外枠スタイル')
    .addItem('外枠線', 'applyOuterBorderSolid')
    .addItem('外枠線太', 'applyOuterBorderThick')
    .addItem('外枠線点線', 'applyOuterBorderDashed')
    .addItem('外枠線二重', 'applyOuterBorderDouble');

  // メインメニューに「枠線削除」を追加し、サブメニューを付与
  menu.addItem('枠線削除', 'removeOuterBorder') // 親メニューに直接追加
      .addSeparator() // 区切り線
      .addSubMenu(borderMenu) // 枠線スタイルのサブメニュー
      .addSubMenu(outerBorderMenu) // 外枠スタイルのサブメニュー
      .addToUi();
}

// --- 枠線のスタイル(各セルに枠線を設定) ---
function applyCellBordersSolid() { applyCellBorders('SOLID'); }
function applyCellBordersThick() { applyCellBorders('SOLID_THICK'); }
function applyCellBordersDashed() { applyCellBorders('DASHED'); }
function applyCellBordersDouble() { applyCellBorders('DOUBLE'); }

function applyCellBorders(style) {
  const range = SpreadsheetApp.getActiveSpreadsheet().getActiveRange();
  const rows = range.getNumRows();
  const cols = range.getNumColumns();
  for (let i = 0; i < rows; i++) {
    for (let j = 0; j < cols; j++) {
      const cell = range.offset(i, j, 1, 1);
      cell.setBorder(true, true, true, true, null, null, null, SpreadsheetApp.BorderStyle[style]);
    }
  }
}

// --- 外枠のスタイル(選択範囲の外枠を設定) ---
function applyOuterBorderSolid() { applyOuterBorder('SOLID'); }
function applyOuterBorderThick() { applyOuterBorder('SOLID_THICK'); }
function applyOuterBorderDashed() { applyOuterBorder('DASHED'); }
function applyOuterBorderDouble() { applyOuterBorder('DOUBLE'); }

function applyOuterBorder(style) {
  const spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getCurrentCell().activateAsCurrentCell();
  spreadsheet.getActiveRangeList().setBorder(true, true, true, true, null, null, '#000000', SpreadsheetApp.BorderStyle[style]);
};

// --- 外枠削除(修正版) ---
function removeOuterBorder() {
  const range = SpreadsheetApp.getActiveSpreadsheet().getActiveRange();
  const rows = range.getNumRows();
  const cols = range.getNumColumns();
  for (let i = 0; i < rows; i++) {
    for (let j = 0; j < cols; j++) {
      const cell = range.offset(i, j, 1, 1);
      cell.setBorder(false, false, false, false, null, null); // 外枠を削除
    }
  }
}

おわりに

次回は「リンクを挿入・書式をクリア」するショートカットキーを紹介します。

リンクを挿入は個人的にとてもよく使うショートカットで、毎々便利に使ってます。

お楽しみに。

おすすめ記事

関連記事



いいなと思ったら応援しよう!