Googleスプレッドシートで半角スペースを全角に統一|バラバラなスペースを一括修正

Googleスプレッドシートで名前の一覧を整理していると、苗字と名前の間のスペースに半角スペースと全角スペースが混在してしまうことはありませんか?
データが統一されていないと、検索や並び替えがうまくいかず、意図しない並びになってしまうことも…。
ですが、一つずつ手作業で修正するのは大変ですよね。
そこで、本記事では、半角スペースを全角スペースに一括変換する3つの方法をご紹介します。

スペースを半角→全角に一括変換する3つの方法
方法 | 適用場面 | メリット | デメリット |
---|---|---|---|
①関数を使用SUBSTITUTE 関数 | 元データを残しつつ、別の列で変換したい | 手軽に変換できる | 元データを修正するにはコピー&ペーストが必要 |
②検索と置換 ( Ctrl +H ) | 元データを直接修正したい | 手軽に変換できる | 手動操作が必要なため、繰り返し実行の場合はやや面倒 |
③Google Apps Script(GAS) | 元データを一括で処理し、今後も簡単に実行したい | ワンクリックで処理可能、自動化できる | スクリプトの設定が必要 |
各方法の詳細については以下でご説明します。
方法①:SUBSTITUTE
関数

- 元データは残しておきたい
- 関数で簡単に処理したい
手順(A列のデータをB列で変換する場合)

B2セルに以下の関数を入力します。(1行目はヘッダーのため)
=SUBSTITUTE(A2, " ", " ")
=SUBSTITUTE(文字列, 検索文字列, 置換文字列, [置換の回数](省略可))
数式の説明
SUBSTITUTE
関数は、指定したテキスト内の特定の文字列を別の文字列に置き換える関数です。
=SUBSTITUTE(文字列, 検索文字列, 置換文字列, [置換の回数](省略可))
- 文字列:対象となる文字列(セル参照も可)
- 検索文字列:置き換えたい文字
- 置換文字列:新しく置き換える文字
- [置換の回数](省略可):置換を適用する回数(省略するとすべて置換)
今回の数式の場合
=SUBSTITUTE(A2, " ", " ")
- A2セルのテキストを対象にします。
- 半角スペース (
" "
) を検索します。 - A2セルの中のすべての半角スペースを全角スペースに置き換えます。
- 半角スペースが複数含まれていても、一括で全角スペースに置換されます。
- 例えば
"A B C"
という文字列がある場合、数式を適用すると"A B C"
になります。
- 例えば

オートフィルで下にドラッグして他の行にも数式を適用します。
応用:ARRAYFORMULA
関数を使って複数行を一括変換
ARRAYFORMULA
関数を使った方法は、以下の場合に便利です。
- 新しいデータが追加されても自動で変換したい
- オートフィルを使わずに一括で適用したい
SUBSTITUTE
関数は単独のセルに対して適用されますが、ARRAYFORMULA
関数を組み合わせることで、複数のセルに対して一括で適用できます。
B列全体を自動変換するには、B2セルに以下の式を入力:
=ARRAYFORMULA(IF(A2:A<>",", SUBSTITUTE(A2:A, " ", " ")))
数式の説明
ARRAYFORMULA()
-
- 配列(範囲)を一括処理するための関数です。
- 通常の関数は1セルずつ適用されますが、
ARRAYFORMULA
を使うことで複数のセルに適用でます。
A2:A<>","
-
- A列(A2以降)のセルが
","
でない場合にSUBSTITUTE
を適用します。 - これはA列が空白でない場合に処理するための条件分岐となります。
- A列(A2以降)のセルが
SUBSTITUTE(A2:A, " ", " ")
-
A2以降のすべてのセルで 半角スペース (
" "
) を全角スペース (" "
) に置換します。
これにより、A列のすべてのデータが自動的に変換され、B列に表示されます。
方法②:検索と置換(Ctrl
+H
)

- 元データを直接修正したい
- GASを使わずに一括変換したい
手順
Ctrl
+H
)
Ctrl
+H
を押して「検索と置換」ダイアログを開きます。
(上部メニューの「編集」ー「検索と置換」からでも行えます)

検索ボックスに 半角スペース
を入力します。
を入力
「置換後の文字列」に全角スペース
を入力します。

検索と置換を適用する範囲を選択します。
- すべてのシート:ファイル内の全シート
- このシート:現在開いているシート内のみ
- 特定の範囲:選択したセルのみに適用

「すべて置換」をクリックすると、選択した範囲の半角スペースが全角スペースに変換されます。
方法③:GAS

- 毎回手作業するのが面倒で、自動化したい
- 定期的に自動で処理したい
「検索と置換」でも全角スペースに一括変換できますが、繰り返し操作する場合にはやや面倒です。
その場合はGoogle Apps Script (GAS) を使用することで、繰り返しの変換もラクにできます。
今回のスクリプト例では、A列を対象に一括で半角スペース→全角スペースに変換します。
GASの実行手順

Googleスプレッドシートを開き、メニューの「拡張機能」から「Apps Script」をクリックしてGASエディタを開きます。

function myFunction(){
}
が最初から入っているため、消去して以下のスクリプトを貼り付けます。
function convertHalfWidthSpaceToFullWidth() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var range = sheet.getRange("A:A"); // A列全体を取得
var values = range.getValues();
for (var i = 0; i < values.length; i++) {
if (values[i][0]) { // 空白でない場合のみ処理
values[i][0] = values[i][0].replace(/ /g, " "); // 半角スペースを全角スペースに置換
}
}
range.setValues(values);
}
スクリプトの説明
- アクティブなシートを取得
-
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
SpreadsheetApp.getActiveSpreadsheet()
で現在開いているスプレッドシートを取得します。.getActiveSheet()
で現在開いているシートを取得します。- これによりスクリプトがどのシートを操作するのかを決定します。
- A列全体のデータを取得
-
var range = sheet.getRange("A:A"); // A列全体を取得
sheet.getRange("A:A")
でA列全体を選択します。"A:A"
は A列のすべての行を指します。
- データを2次元配列として取得
-
var values = range.getValues();
.getValues()
でA列のデータを2次元配列として取得します。
- 例:
values = [["山田 太郎"], ["佐藤 一郎"], ["鈴木 三郎"], [""]]
- 例:
- A列すべての行を処理
-
for (var i = 0; i < values.length; i++) {
for
ループでA列のすべての行を処理します。values.length
はA列の行数(データが何行あるか)
- 空白セルを除外
-
if (values[i][0]) { // 空白でない場合のみ処理
values[i][0]
が 空白でない場合に処理を実行します。- 空白セルを処理しない ことで、不要な変更を防ぎます。
- 各セルの半角スペースを全角スペースに置換
-
values[i][0] = values[i][0].replace(/ /g, " "); // 半角スペースを全角スペースに置換
.replace(/ /g, " ")
- すべての半角スペース
/ /g
は 「すべての半角スペース」を対象とする正規表現です。-
g
は「グローバル」オプションで、すべての一致箇所を置換します。
- すべての半角スペース
- 変換後のデータをA列に書き戻す
-
range.setValues(values);
- 変換後のデータをA列に書き戻します。
setValues()
で一括書き込みすることで、処理を高速化します。

スクリプトを書いたら、好きな名前を付けて保存します。
(例:「半角→全角スペース_変換)

スクリプトの「実行」をクリックします。

A列のデータがすべて全角スペースに統一されます。
対象の列を変更する場合
対象の列をA列以外に変更する場合は、以下コードA:A
の部分を書きかえます。
変更する箇所
var range = sheet.getRange("A:A"); // A列全体を取得
例えば、B列全体 に変更したい場合は、以下のように修正します。
var range = sheet.getRange("B:B"); // B列全体を取得
GASをカンタンに繰り返し実行する方法
GASを毎回スクリプトエディタから実行するのは手間ですが、マクロインポートや図形ボタンを使うと簡単に繰り返し処理できます。
- マクロインポートを使うと、GASをスプレッドシートのメニューから実行可能に
- 図形ボタンを作成して、クリックするだけでGASを実行可能に
詳しい設定方法については、以下の記事をご参照ください。

まとめ
- 元データを残したままなら →
SUBSTITUTE
関数 - 元データを修正するなら → 検索と置換
- 元データを繰り返し修正するなら → GASで自動化
作業内容に合った方法を選ぶことで、業務を効率化できます。
また、今回の方法を応用することでスペース以外の置換えにも使えます。
ぜひご活用ください。
弊社では、Google Apps Script(GAS)を活用した業務効率化のサポートを提供しております。
GASのカスタマイズやエラー対応にお困りの際は、ぜひお気軽にご相談ください。
また、ITツールの導入支援やIT導入補助金の申請サポートも行っております。
貴方の業務改善を全力でサポートいたします。
コメント