Excel

数値や日付・通貨にみえる文字列を数値にする3つの簡単な方法【Excel】

データを他のアプリケーションやネットなどから取り込んだり、基幹システムから取り出した際などに、数字が[文字列]になっていて困ることがありますよね。

そこでこの記事では、そんなときに便利な文字列として入力された数字を[数値]にする方法を3つ紹介します。

  1. 私がよく使う方法で何も覚える必要のない超絶おすすめ法
  2. Excel本などで紹介されている[VALUE関数]を使う方法
  3. 計算式が不要な[区切り位置]を使う方法

VALUE関数を使わずに[数値]に変換する

私がよく使う[文字列]として入力された数字を[数値]にする方法です。
2パターンありますが、同じような意味合いなのでお好みでどうぞ。

文字列の数字に「1」を掛ける

まず最初は、[文字列]として入力された数字に「1」を掛けるというものです。

今、B2セル~B4セルに文字列の数字が入力されています。
この文字列の数字に「1」を掛けます。

C2セルに[=B2*1]と入力し確定します(確定する際は、確定後にアクティブセルが下に移動しない[Ctrl + Enter]がおすすめ)。

B2セルに1を掛ける

 

オートフィル(下図の状態でフィルハンドルをダブルクリック)を使って、C3セル、C4セルに数式をコピーします。
合計欄の計算が正しくなり、文字列だった数字が[数値]になったことがわかります。

フィルハンドルをダブルクリック

オートフィルで数式がコピーされた

 

文字列の数字に「0」を足す

文字列の数字に「1」を掛けるのと同じ発想です。
B2セル~B4セルに文字列の数字に「0」を足します

C2セルに[=B2+0]と入力し確定し、同じように数式をコピーします。

文字列に0を足す

数式をコピーして完成

 

※表示形式が[文字列]になり左揃えになることがありますが、[表示形式]を[標準]にすれば正しく表示されます。

 

VALUE関数を使って[数値]にする

VALUE(バリュー)関数の書式

VALUE(バリュー)関数は、文字列として入力された数字を数値]に変換する関数です。

引数(ひきすう)には、文字列として入力された数字などを入力します。
書式は[=VALUE( 文字列 )]という形です。

引数の[文字列]の部分には、[数値]のほか、シリアル値という数値の一種である[日付]や[時刻]なども指定できます。

もし数値に変換できない文字列を指定した場合には[#VALUE!]エラーが返されます。

 

VALUE関数を入力する

VALUE関数を入力するセル範囲を指定します。
ここでは、C2セル~C4セルを指定します。

C2セル~C4セルを選択

 

この状態でC2セルに[=va]と入力します。すると、[VALUE]という表示が現れるので、[VALUE]を選択し、[Tab]キーを押します。
C2セルに[=VALUE(]と入力されるので、これに続けて、B2セルをクリックします。

[=va]と入力

VALUE関数の引数にB2を入力

 

[Ctrl + Enter]と押し、式を確定すると、選択していたC2セル~C4セルに数式が入力され数値が返されます。

VALUE関数がC2セル~C4セルに入力された

 

さきほど、VALUE関数で[日付]や[時刻]が数値にできることを紹介しました。
ではここで[日付][時刻][全角の数字][通貨][百分率]が[数値]にできるかまとめて確認してみましょう。

今、A列には[日付][時刻][全角の数字][通貨][百分率]にみえる[文字列]が入力されています。

VALUE関数(日付以外)

 

これらのデータを、VALUE関数を使って数値に変換してみます。
先ほどと同じように、B2セルにVALUE関数を入力し、[Ctrl + Enter]で確定します。

B2セルにVALUE関数を入力

B2セル~B6セルにVALUE関数

 

[日付]や[時刻]にみえるものは[シリアル値]に、[全角の数字][通貨][百分率]にみえる[文字列]も[数値]に変換されました。

ちなみに、最初に紹介した「1」を掛ける方法「0」を足す方法でも同じ結果になります。

関連記事日付や時刻を表す[シリアル値]について知っておくべき3つのこと

 

数値とみなせない文字列とは

では[数値]とみなせない文字列にはどんなものがあるのでしょうか。
[一二三][2023年度][イロハ][C-1000]で試してみましょう。

VALUE関数では[数値]に変換できないものを指定すると[#VALUE!]エラーになります。

結果はご覧のとおり全て[#VALUE!]エラーとなりました。
漢数字は数値に変換できないようですね。

数値とみなせない文字列

 

関数に文字列を直接入力するには

VALUE関数に[文字列]を直接入力するには、入力する文字列を[""(ダブルクォーテーション)]で囲みます。

VALUE関数に限らず、Excelで数式に[文字列]を入力するときは[""(ダブルクォーテーション)]で囲む必要があることを覚えておいてください。

数式で文字列を扱うときにはダブルクォーテーションで囲む

 

[区切り位置]で数値に変換する

ここまでは、隣接するセルに計算式や関数を入力して[文字列]を[数値]にするパターンを紹介しました。
では、そういった計算スペースがない場合はどうすればよいのでしょうか。

そのような場合は、今から紹介する[区切り位置]を使う方法で対応してください。

[数値]にする範囲を選択する

まず[数値]にしたい[文字列]を範囲選択します。
ここでは、A2セル~A6セルとします。

[区切り位置]で数値に変える範囲を選択

 

[区切り位置]ボタンを押す

データ]タブの[データツール]グループにある[区切り位置]ボタンを押します。

[区切り位置]ボタンのリボンの位置

 

すると、[区切り位置指定ウィザード]の1ページ目が開きます。
次へ]ボタンを押します。

区切り位置指定ウィザード1

 

[区切り位置指定ウィザード]の2ページ目が開きます。
ここも[次へ]ボタンを押します。

区切り位置指定ウィザード2

 

[区切り位置指定ウィザード]の3ページ目が開きます。
[列のデータ形式]の[G/標準]が選ばれていることを確認して[完了]ボタンを押します。

区切り位置指定ウィザード3

 

これで範囲選択した、A2セル~A6セルが[数値]になります。

A2~A6が数値にかわる

 

もし[数値]が[左揃え]になっている場合は表示形式を[標準]などにしてください。

まとめ

  • 全角の数字も数値に変換できます。
  • 日付や時刻の形式とみなせる文字列を数値に変換すると、シリアル値が返されます。
  • 数値とみなせない文字列を指定すると、#VALUE!エラーになります。
  • 文字列を直接入力するときは""で囲みます。
  • 1を掛けたり、0を足したりすることでも数値に変換することができます。

 

最後まで、読んでいただきありがとうございました。

おすすめ記事

参考文献

-Excel
-

© 2024 まなびっと Powered by AFFINGER5