• 作成日 : 2025年10月27日

スプレッドシートで文字列を数値に変換するには?書式設定と変換方法の基本ガイド

スプレッドシートで数値として扱いたいデータが文字列形式になってしまい、計算や集計ができずに困った経験はありませんか。Googleスプレッドシートやエクセルで文字列を数値に変換する方法は複数あり、データの状態や用途によって最適な手法が異なります。

本記事では、テキスト形式のデータを数値形式に変換する基本的な方法から、変換時の注意点、書式設定の基本まで、実務で役立つテクニックを体系的に解説します。

スプレッドシートで文字列が数値として認識されない原因は?

文字列が数値として認識されない主な原因は、セルの書式設定が「プレーンテキスト」になっているか、数値の前後に見えない空白文字が含まれているためです。この問題は、CSVファイルのインポートや他システムからのデータ貼り付け時に頻繁に発生します。

Googleスプレッドシート(Google Sheets)では、セルに入力された値が自動的にデータ型を判定されますが、先頭にアポストロフィ(’)が付いている場合や、全角数字が含まれている場合は文字列として扱われます。また、エクセルから貼り付けたデータや、外部システムからエクスポートしたCSVファイルを読み込んだ際に、数値データがテキスト形式で保存されていることもよくあります。

この状態では、SUM関数やAVERAGE関数などの集計関数が正しく動作せず、計算結果が0になったり、エラーが表示されたりします。データ分析や報告書作成の効率を大幅に低下させる要因となるため、適切な変換方法を理解しておくことが重要です。

文字列を数値に変換する簡単な方法は?

最も簡単な変換方法は、VALUE関数を使用することです。VALUE関数は、テキスト形式の数字を数値データに変換する専用の関数で、Googleスプレッドシートとエクセルの両方で利用可能です。

VALUE関数の基本的な使い方は非常にシンプルです。例えば、A1セルに文字列形式の「123」が入っている場合、別のセルに「=VALUE(A1)」と入力すれば、数値の123に変換されます。この関数は「50%」→0.5 などは変換できますが、「1,234」などのカンマ付き表記はロケール設定に依存します。うまく変換できない場合は、(Sheets)地域設定を見直す/SUBSTITUTE (A1, “,”, “”)で前処理してからVALUE/(Excel)NUMBERVALUE (A1, “.”, “,”) のように区切り記号を指定してください。

一括変換は =ARRAYFORMULA (IF (LEN (A1:A100), VALUE (SUBSTITUTE (A1:A100, CHAR (160), “”)), )) のように、

空セルをスキップしつつ ノーブレークスペース(CHAR (160))除去などの前処理を入れると安定します。不要になったら値貼り付けで上書きします。

(Excelの場合は =IF (A1:A100<>””, NUMBERVALUE (A1:A100, “.”, “,”), “”) など。)

書式設定を使って文字列を数値に変換する手順は?

「表示形式」→「数字」→「数値」は“見た目”の設定です。多くのケースで数値として扱われますが、’(アポストロフィ)付き/プレーンテキスト設定/不可視スペース混入などの場合は文字列のまま残ることがあります。変換できないときは、VALUE/TO_NUMBER で明示変換し、必要に応じて TRIM/CLEAN/SUBSTITUTE (…,CHAR (160), “”) などで前処理してから適用してください。

STEP1:変換したいセル範囲を選択する

まず、文字列から数値に変換したいセルまたはセル範囲をマウスでドラッグして選択します。複数の離れた範囲を選択する場合は、Ctrlキー(Macの場合はCommandキー)を押しながらクリックします。

STEP2:表示形式メニューを開く

Googleスプレッドシートの上部メニューバーから「表示形式」をクリックし、ドロップダウンメニューを表示させます。エクセルの場合は、ホームタブの「数値」グループから操作します。

STEP3:数値形式を選択する

「数値」を選択すると表示形式は数値になります。 ただし 文字列要因(’ や不可視スペース等)が残っていると数値化されません。 その場合は前処理(TRIM/CLEAN/SUBSTITUTE)や VALUE/TO_NUMBER を併用してください。

ただし、この方法では見えない空白文字や特殊文字が含まれている場合、正しく変換されないことがあります。そのような場合は、次に説明するデータクリーニングの手法を併用する必要があります。

数値変換がうまくいかない場合の対処法は?

変換がうまくいかない場合は、TRIM関数やCLEAN関数を使って不要な文字を除去してから変換を行います。データに含まれる見えない文字や余分な空白が、変換を妨げる主な原因となっているためです。実務では ノーブレークスペース(NBSP=CHAR    (160)) が混入していることが多いので、

=VALUE (SUBSTITUTE (TRIM (CLEAN (A1)), CHAR (160), “”))のように CHAR (160) の除去を追加すると安定します。

最も効果的な対処法は、複数の関数を組み合わせた数式を作成することです。例えば、「=VALUE(TRIM (CLEAN (A1)))」という数式を使用すれば、A1セルの値から制御文字を除去(CLEAN)し、前後の空白を削除(TRIM)してから、数値に変換(VALUE)できます。この組み合わせにより、ほとんどのケースで正常な変換が可能になります。

全角数字が含まれている場合は、SUBSTITUTE関数やREGEXREPLACE関数を使用して半角に置換する必要があります。

全角→半角の安全な一括置換例

=VALUE(

SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (

SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (SUBSTITUTE (

SUBSTITUTE (SUBSTITUTE (A1,”,”,”,”),”.”,”.”),

“0”,”0″),”1”,”1″),”2”,”2″),”3”,”3″),”4”,”4″),

“5”,”5″),”6”,”6″),”7”,”7″),”8”,”8″),”9”,”9″))

必要に応じて、前処理として SUBSTITUTE (…,CHAR (160),””) も併用してください。

それでも変換できない場合は、データを一度テキストエディタにコピーして、不要な文字を手動で削除してから再度貼り付ける方法も有効です。大量のデータを扱う場合は、Google Apps ScriptやVBAマクロを使った自動化も検討すべきでしょう。

文字列を数値に変換する際の注意点とは?

変換時の最大の注意点は、元のデータが失われる可能性があることと、数値の精度が変わる場合があることです。特に、先頭のゼロが含まれる社員番号や郵便番号などは、数値変換により消失してしまうため注意が必要です。

数値変換を行う前に、必ず元データのバックアップを作成しておくことを推奨します。Googleスプレッドシートでは、シート全体を複製するか、変更履歴機能を活用して、いつでも元の状態に戻せるようにしておきます。特に重要なマスターデータを扱う場合は、別のシートやファイルに元データを保存してから作業を開始すべきです。

また、小数点を含む数値の場合、表示形式の設定によって見た目の精度が変わることがあります。例えば、「3.14159」という値を小数点以下2桁の表示形式に設定すると「3.14」と表示されますが、実際のセル値は「3.14159」のまま保持されています。計算に使用する場合は、ROUND関数やTRUNC関数を使って、実際の値も調整する必要があるケースがあります。

日付や時刻のデータも内部的には数値として扱われているため、意図しない変換が発生することがあります。「2024/01/01」のような日付文字列を数値変換すると、シリアル値と呼ばれる数値に変換されてしまうため、日付データは別途適切な書式設定を適用する必要があります。

大量のデータを効率的に変換する方法は?

大量データの効率的な変換には、検索と置換機能またはGoogle Apps Scriptを活用します。手作業では時間がかかりすぎる場合や、定期的に同じ作業を繰り返す必要がある場合に特に有効です。

検索と置換機能(Ctrl+H)を使用する方法では、正規表現を有効にして一括変換を行います。例えば、カンマ区切りの数値を一括で変換する場合、検索パターンに「,」を指定し、置換文字列を空欄にすることで、すべてのカンマを削除できます。その後、書式設定で数値形式を適用すれば、効率的に変換が完了します。

より高度な自動化が必要な場合は、Google Apps Script(GAS)を使用します。以下のような簡単なスクリプトで、選択範囲の文字列を数値に変換できます。

javascript

function convertToNumber () {

var sheet = SpreadsheetApp.getActiveSheet ();

var range = sheet.getActiveRange ();

var values = range.getValues ();

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] = Number(values[i][j].replace(/,/g, ”)); }}}

range.setValues (values);}

このスクリプトを定期的に実行するようトリガー設定すれば、データインポートの都度、自動的に変換処理が実行されます。

広告

この記事をお読みの方におすすめのガイド5選【部署別紹介】

最後に、この記事をお読みの方によく活用いただいている人気の資料・ガイドを紹介します。すべて無料ですので、ぜひお気軽にご活用ください。

経理担当者向け

①Excel関数集 32選まとめブック

Excel関数集 32選まとめブック

経理担当者の方をはじめ、ビジネスパーソンが知っておきたい便利なExcel関数集を初級~上級までギュッと網羅。新人社員の研修用などにもお使いいただけます。Google スプレッドシートならではの関数もご紹介しています。

無料ダウンロードはこちら

②勘定科目・仕訳辞典(税理士監修)

勘定科目・仕訳辞典(税理士監修)

勘定科目・仕訳に関する基本知識、および各勘定科目の仕訳例を具体的かつ網羅的にまとめた、50ページを超えるガイドを無料で提供しております。お手元における保存版としてでだけでなく、従業員への印刷・配布用としてもぜひご活用ください。

無料ダウンロードはこちら

人事労務担当者向け

①入社・退職・異動の手続きガイドブック

入社・退職・異動の手続きガイドブック

書類の回収・作成・提出など手間のかかる入社・退職・異動(昇給・昇格、転勤)の手続き。

最新の制度をもとに、よくある質問やチェックポイントを交えながら、各手続きに必要な情報をまとめた人気のガイドですす。

無料ダウンロードはこちら

②社会保険・労働保険の手続きガイド

社会保険・労働保険の手続きガイド ‐入社・退職・異動編‐

企業において社会保険および労働保険の加入・喪失手続きは必ず発生し、手続きを誤れば保険事故が発生した際に従業員が不利益を被る可能性があります。

各保険の基本的な手続き方法を入社・退職・異動のシーン別にギュッとまとめた分かりやすいガイドです。

無料ダウンロードはこちら

総務・法務担当者向け

契約書ひな形まとめ30選

契約書ひな形まとめ30選

業務委託契約書や工事請負契約書…など各種契約書や、誓約書、念書・覚書、承諾書・通知書…など、使用頻度の高い30個のテンプレートをまとめた、無料で使えるひな形パックです。

無料ダウンロードはこちら


※ 掲載している情報は記事更新時点のものです。

※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。

関連記事