
顧客リストや名刺データを整理しているとき、こんなストレスを抱えていませんか?

「(株)」「(株)」「㈱」「株式会社」…表記がバラバラで集計できない!
これを解決する一般的な関数がSUBSTITUTE関数です。
しかし、SUBSTITUTE関数を使うと、こんな問題に遭遇します。
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"(株)","株式会社"),"(株)","株式会社"),"㈱","株式会社")...
果てしなく続くSUBSTITUTE関数…
このような関数は、以下のデメリットがあります。
- 数式が長いので管理が難しくなる
- 後から修正が難しくなる
- スプレッドシートを重くしてしまう
MASAもう、そんな数式地獄の関数はやめにしましょう!
この記事では、Google Apps Script(GAS)を使って、この問題をスマートに解決します。
GASを使えば、ボタン1つクリックするだけで、表記ゆれを解決するツールを作ることが出来ます。
↓↓実際の動画↓↓
MASAコピペするだけでOKなので、ぜひ最後まご覧ください!
【コピペOK】表記ゆれをボタン1つで解決
ここからは実際にGAS(Google Apps Script)を使って、表記ゆれをボタン1つで解決する方法について解説していきます。
MASAGASの立ち上げ方法は省略してます。
立ち上げ方法から知りたい方は、以下の記事をご参照ください。

コードをコピーして貼り付け
function onOpen() {
const ui = SpreadsheetApp.getUi();
ui.createMenu('便利ツール') // メニュー名
.addItem('指定列の表記を統一', 'fixNames') // メニュー項目名
.addToUi();
}
function fixNames() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// ▼▼▼ 設定エリア1:対象の列番号を「1つだけ」指定してください ▼▼▼
const TARGET_COLUMN = 1;
// ▲▲▲ 設定エリア1 ここまで ▲▲▲
// ▼▼▼ 設定エリア2:ここに行を足すだけでルール追加OK! ▼▼▼
const replaceList = {
"(株)": "株式会社 ",
"(株)": "株式会社 ",
"㈱": "株式会社 ",
"(有)": "有限会社 ",
"㈲": "有限会社 ",
"KK.": "株式会社 ",
" ": " " // 全角スペースを半角にする
};
// ▲▲▲ 設定エリア2 ここまで ▲▲▲
const lastRow = sheet.getLastRow();
if (lastRow === 0) {
SpreadsheetApp.getUi().alert("データが見つかりません。");
return;
}
const range = sheet.getRange(1, TARGET_COLUMN, lastRow, 1);
const values = range.getValues();
const newValues = values.map(row => {
let cell = row[0];
if (typeof cell !== 'string' || cell === "") {
return [cell];
}
Object.keys(replaceList).forEach(key => {
cell = cell.split(key).join(replaceList[key]);
});
return [cell];
});
range.setValues(newValues);
}JavaScript自分のシートに合わせてカスタマイズ
どの列の表記ゆれを直したいですか?
コードの以下の部分を見てください。
const TARGET_COLUMN = 1; JavaScriptここでは「何列目を変換するか」を数字で指定します。
A列、B列などのアルファベットではなく、左から数えて何番目か(1, 2, 3…)を入力してください。
- A列を直したい場合
-
1 - B列を直したい場合
-
2 - F列を直したい場合
-
6
MASA「D列の表記ゆれを直したい!」という場合は、ここを4に書き換えるだけでOKです!
どの文字をどんな風に直したいですか?
次に、変換ルールを設定します。
ここがこのツールの心臓部です。
以下のリスト部分を見てください。
const replaceList = {
"(株)": "株式会社 ",
"(株)": "株式会社 ",
"㈱": "株式会社 ",
"(有)": "有限会社 ",
"㈲": "有限会社 ",
"KK.": "株式会社 ",
" ": " " // 全角スペースを半角にする
};JavaScriptこのリストは、「左側の文字」を見つけたら、「右側の文字」に書き換えるというルールになっています。
書き換えたい時は以下の手順を踏めばOKです。
""の中に修正したい文字を入れて、:で区切る- 次に、修正後の文字を
""に入れる - リストを増やしたかったら最後に
,で区切る
この手順を踏むだけでOKです。
MASAご自身の好みに合わせて編集してください!
保存して実行
自分の環境に合わせた変更が出来たら、以下のステップを踏むだけでOKです。
- 「権限を確認」をクリック
- アカウントを選択
- 左下の「詳細」をクリック
- 一番下の「無題のプロジェクト(安全ではないページ)に移動」をクリック
- 「許可」をクリック
MASAこの一連の流れが分からない方向けに、こちらの記事で画像付きで解説してます!
GASを実行したスプレッドシートに戻ってみてください。
あなたが、表記ゆれを直したいと思ってる列が見事に修正されてるのが、分かると思います。
最後に、ブラウザの「更新ボタン」を一度押してみてください。
画面が再読み込みされると、メニューバーに「便利ツール」という項目が追加されます。

MASA今後は、この「便利ツール」をクリックするだけで、いつでも実行できるようになります!
【もっと便利に】「もっとこうしたい」などありませんか?
今回紹介したコードは、誰でも使えるように、特定の1列を、リスト通りに変換するというシンプルな機能に絞っています。
しかし実際の現場では、こんな物足りなさが出てくるかもしれません。
- 文字の位置も移動させたい
-
今のコードは、文字を置き換えることはできますが、文字の位置は移動できません。
例えば「(株)タナカ」を変換すると「株式会社タナカ」になりますが、正しくは「タナカ株式会社(後株)」ということもあるかもしれません。
シチュエーションに合わせて、文字を移動させたりするかの自動判定には、もっと高度なプログラムが必要です。
- あえて直してはいけない例外対応

基本的には全部の表記揺れを一括で直したいけど、1つだけ特例で、変える必要がない箇所がある…
このような、「この列の中のこれだけは除外したい」といった要望もあるかもしれません。
そんな条件付きの処理は、一括変換ツールでは対応できません。
- 他の列の表記ゆれも同時に直したい
-
「A列の社名は表記統一、D列の電話番号はハイフン削除、F列の金額は半角化…」
実務では、列ごとにやりたい処理が違うはずです。
コードを書き換える手間なく、ボタン一発ですべての列をで完璧に整形するには、専用のカスタマイズが必要です。
もっと高機能なツールが欲しいならお任せください!

どうせやるなら、ウチの会社のルールに完璧に合わせたい!

社員が使うから、絶対にミスが起きない安全なツールにしたい
そうお考えの方は、ぜひ私に一度ご相談ください。
MASAあなたの業務フローにカチッ!とハマる「オーダーメイドの自動化ツール」を作成します!
- 文字の位置も移動させる柔軟な仕組み
-
ただ表記方法を直すだけでなく、文字の場所も移動させる仕組みを構築します。
- 変えてはいけないを守る厳格な仕組み
-
一律変換ではなく、状況に合わせた柔軟な処理を組み込みます。
- 複数の列を一括整形
-
ボタン1つでシート全体を一気に整形する処理を組み込みます。
まずは「今の作業のどこが面倒か」をお問い合わせから教えてください。
MASAあなたに最適な自動化プランをご提案します!
まとめ
SUBSTITUTE関数を使った、管理が難しい重たくなるシートとはもうおさらばです。
今回紹介したGASなら、コード内のリストに追記するだけで、シートを重くすることなく、誰でも簡単に表記ゆれを統一できます。
- SUBSTITUTE関数は管理が難しい
- SUBSTITUTE関数はシートを重くするリスクがある
- GASを使ったらボタン1つで表記ゆれを統一
- シートが重くなる心配もなし
今回紹介したコードを実際に試してみると、一気に表記ゆれが統一されて、「気持ちいい!」ってなります。
もし、

自分の会社ルールに合わせたコードに修正してほしい
と思ったらいつでもご相談ください。
あなたの業務に完璧にフィットする専用ツールを作成します。
MASA面倒な作業はツールに任せて、より集中すべきタスクに集中する仕組みを一緒に作りましょう!