Google Apps Script(GAS)でスプレッドシートの全角英数字を半角に変換する方法

Googleスプレッドシートで全角英数字を半角に変換する方法を紹介します。GAS(Google Apps Script)を使えば、ワンクリックで簡単に変換できます。


1. スクリプトの登録

まず、GASを設定するために、スクリプトエディタを開きます。

スクリプトエディタの開き方

  1. Googleスプレッドシート を開く
  2. [拡張機能] → [Apps Script] をクリック
  3. スクリプトエディタ が開く

スクリプトを入力

スクリプトエディタに以下のコードをコピー&ペーストしてください。


function convertFullWidthToHalfWidth() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var range = sheet.getDataRange(); // データ範囲を取得
  var values = range.getValues(); // データを2次元配列で取得

  // 全角英数字を半角に変換する関数
  function toHalfWidth(str) {
    return str.replace(/[A-Za-z0-9]/g, function(s) {
      return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
    });
  }

  // 変換処理
  for (var i = 0; i < values.length; i++) {
    for (var j = 0; j < values[i].length; j++) {
      if (typeof values[i][j] === "string") {
        values[i][j] = toHalfWidth(values[i][j]);
      }
    }
  }

  // シートに反映
  range.setValues(values);
}

2. スクリプトの実行方法

スクリプトを登録したら、実行しましょう。

手順

  1. スクリプトエディタの上部にある「関数を選択」のプルダウンを開く
  2. convertFullWidthToHalfWidth を選択
  3. 再生ボタン(▶) をクリックして実行
  4. 権限の許可を求められたら許可

3. 権限エラーが発生した場合の対処法

スクリプト実行時に 「権限がありません」 というエラーが出る場合は、以下の手順で対応できます。

① 手動で権限を承認

  1. スクリプトエディタ(Apps Script)を開く
  2. 上部メニューの [実行] → [関数を実行]convertFullWidthToHalfWidth を選択
  3. 「権限の承認が必要です」というダイアログが出たら [承認] をクリック
  4. Googleアカウントを選択し、許可を実行

② Googleアカウントの設定を確認

  1. Googleアカウントの セキュリティページ を開く
  2. [アプリとサービス] → [Google Apps Script] を確認
  3. GASがブロックされている場合は許可

③ Google Workspace(企業アカウント)の制限

会社や学校のGoogleアカウントでは、管理者によってGASの実行が制限されていることがあります。

個人のGoogleアカウントで試してみる


4. メニューから実行する方法

手動でスクリプトを実行するのが面倒な場合は、スプレッドシートに専用メニューを追加すると便利です。

以下のコードを追加してください。


function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu("カスタムメニュー")
    .addItem("全角→半角変換", "convertFullWidthToHalfWidth")
    .addToUi();
}

実行方法

  1. スプレッドシートを開く
  2. メニューに 「カスタムメニュー」 が追加される
  3. 「全角→半角変換」 をクリック

5. まとめ

手順内容
1スクリプトエディタを開く
2コードをコピー&ペースト
3スクリプトを実行
4権限エラーが出たら許可
5メニューから実行できるようにする

GASを活用すれば、スプレッドシートの全角英数字をワンクリックで半角に変換できます!ぜひ試してみてください。