【エクセル】数値に変換するVALUE関数の使い方。VLOOKUP関数のエラー解消も可能!

エクセルのVALUE関数で文字列を数値に変換する方法

Microsoft Excelでセルのデータが文字列になっていて困ったことがある方は多いのではないでしょうか。

データが文字列だと数値だと判断されず、関数や数式に使用することが出来ません。

そんな時に便利なのが、VALUE関数です。

VALUE関数は、文字列を数値に変換する関数で、文字列による数式エラーの解決に非常に役立ちます。

特に、VLOOKUP関数と組み合わせることで、VLOOKUP関数でよく発生する文字列エラーを解消することができます。

この記事では、エクセルのVALUE関数の使い方とVLOOKUP関数と組み合わる方法、その他の事例を紹介します。

VALUE関数とは、文字列を数値に変換する関数

エクセルのVALUE関数は、文字列を数値に変換する関数です。

セルに数値が入力されているのに、「文字列」であることが原因で数式が反映されないケースに役立つ関数です。

右クリックメニューの「セルの書式設定」画面を開いたことがある方は多いと思いますが、セルの表示形式には、「数値」以外にも「標準」「通貨」「日付」「文字列」「パーセンテージ」など様々あります。

セルの書式設定でセルの表示形式を確認
セルの表示形式を確認

セルの書式が異なるC列の各セルに「100」を入力すると、書式ごとに「¥100」や「1900/4/9」や「100%」など表示が変わります。

書式が異なる各セルに100を入力した結果
書式が異なる各セルに100を入力

C列の値に対してD列にVALUE関数を使うと、パーセンテージ以外の書式は、「100」と数値で表示することができます。

セルの書式が異なる各セルにVALUE関数を使った結果
セルの書式が異なる各セルにVALUE関数を使った結果

このように、VALUE関数は、「文字列」の書式のみを数値に変換するのではなく、さまざまな書式のデータを数値に変換する関数です。

以降の見出しからは、VALUE関数が具体的にどんな場面で役立つかを実例と合わせながら、さらに詳しく紹介していきます。

VALUE関数を使う方法

エクセルのVALUE関数は、Microsoft365、Excel2010以降のバージョンであれば利用できます。

エクセルのVALUE関数の使い方や書式について解説します。

VALUE関数の書式と引数

VALUE関数の書式と引数は以下のとおりで、対象のセルを指定するだけのシンプルなものです。

=VALUE(文字列)

引数「文字列」:入力必須です。数値(文字列)、日付、時刻のセルを指定します。直接文字を指定する場合は、ダブルクォーテーション(”)で囲います。(例:B2、”2024/10/8”)

数値に変換できないセルを指定した場合は、エラー値「 #VALUE!」 が表示されます。

つまり、VALUE関数の仕組みをフロー図で表すと以下となります。

VALUE関数の仕組み(フロー図)
VALUE関数の仕組み(フロー図)

VALUE関数の使い方と手順

VALUE関数を使って、文字列のセルを数値に変換する方法を解説します。

下の表のB3~B6セルに数値が入力されていますがセルの表示形式が「文字列」のため、B7セルのSUM関数の結果が「0」になっています。

この表にVALUE関数を挿入して、SUM関数の結果が正しく反映されるようにします。

文字列のためSUM関数の結果が0
文字列のためSUM関数の結果が0

手順1.VALUE関数を挿入
文字列を数値で表示したいセルに、VALUE関数を挿入します。

=VALUE(

手順1.VALUE関数を挿入
手順1.VALUE関数を挿入

手順2.VALUE関数の引数を指定
数値に変換したいB3セルを指定します。セルをクリックするか、B3と入力してください。

=VALUE(B3)

手順2.VALUE関数の引数を指定
手順2.VALUE関数の引数を指定

手順3.VALUE関数を確定
Enterキーを押してVALUE関数を確定すると、数値「100」が表示されます。一見、B3セルと同じように感じますが、数値セルに変換されています。

手順3.VALUE関数を確定し数値に変換
手順3.VALUE関数を確定し数値に変換

手順4.VALUE関数をコピペ
C3セルのVALUE関数をコピーし、下のセルに貼り付けすると、残りのセルも数値に変換します。

手順4.VALUE関数を下方向にコピペ
手順4.VALUE関数を下方向にコピペ

手順5.SUM関数を挿入
VALUE関数で数値に変換したセルに対してSUM関数を利用すると、合計を表示することができます。このように、VALUE関数は、文字列を数値に変換し、その結果を数式に使用するため際に利用されることが多いです。

手順5.SUM関数で合計を表示
手順5.SUM関数で合計を表示

VALUE関数でVLOOKUP関数のエラーを解消する方法

VALUE関数をVLOOKUP関数と組み合わせて利用する方法を紹介します。

下の表のF列に以下のVLOOKUP関数を挿入して、B列、C列のセル範囲から商品名を抽出しようとしています。

=VLOOKUP(E3,$B$3:$C$6,2,FALSE)

文字列によるVLOOKUP関数のエラー
文字列によるVLOOKUP関数のエラー

しかし、E列の書式が「文字列」で、B列の書式が「数値」と書式が異なるため、VLOOKUP関数の結果はエラー値「#N/A」が表示されます。

このような書式が異なることで発生するVLOOKUP関数のエラーを解決する際に、VALUE関数が役立ちます。

VLOOKUP関数の第1引数にVALUE関数を挿入して、E列のセルの値を文字列から数値に変換します。そうすると、VLOOKUP関数のエラーを消すことができます。

=VLOOKUP(VALUE(E3),$B$3:$C$6,2,FALSE)

VLOOKUP関数とVALUE関数を組み合わせる方法
VLOOKUP関数とVALUE関数を組み合わせる方法

逆に、E列の書式が「数値」で、B列の書式が「文字列」でVLOOKUP関数のエラーが発生する場合もあります。

その場合は、B列の右のC列にVALUE関数を挿入し、B列の文字列を数値に変換します。

そうすれば、C列の数値に対してVLOOKUP関数を利用することで、正しく商品名を表示させることができます。

=VLOOKUP(F3,$C$3:$D$6,2,FALSE)

文字列と数値の位置関係が逆の場合のVALUE関数の使い方
文字列と数値の位置関係が逆の場合のVALUE関数の使い方

VALUE関数の事例を4つ紹介

VALUE関数を使った事例を4つ紹介します。

VALUE関数とXLOOKUP関数を組み合わせる

上記で紹介したVLOOKUP関数の事例のように、XLOOKUP関数でも検索値とセル範囲のセルの書式が異なる場合はエラーが発生します。

下の表のE列の書式が「文字列」で、B列の書式が「数値」と書式が異なるため、XLOOKUP関数の結果はエラー値「#N/A」が表示されます。

XLOOKUP関数の第1引数にVALUE関数を挿入して、E列のセルの値を文字列から数値に変換します。そうすると、XLOOKUP関数のエラーを消すことができます。

=XLOOKUP(VALUE(E3),$B$3:$B$6,$C$3:$C$6)

XLOOKUP関数とVALUE関数を組み合わせた方法
XLOOKUP関数とVALUE関数を組み合わせた方法

XLOOKUP関数は、VLOOKUP関数の後継関数です。使い方が分からない方は、以下の記事で詳しい使い方を紹介しているので、参考にしてください。

VALUE関数とLEFT関数を組み合わせる

続いて、VALUE関数とLEFT関数を組み合わせる方法を紹介します。

LEFT関数は、文字列の左から指定した文字数分の文字を抽出する関数です。

下の表のD列にLEFT関数「=LEFT(C3,3」を挿入し、C列の文字の先頭3文字の数値を抽出します。その値をSUM関数で合計しようとしても、LEFT関数の結果は文字列となるため、結果は0となってしまいます。

LEFT関数で抽出した数値にSUM関数を使う
LEFT関数で抽出した数値にSUM関数を使う

こういった場合は、VALUE関数の中にLEFT関数を挿入することで、LEFT関数の結果を直接、数値に変換することが出来きるので、SUM関数の結果も正しく表示されます。

=VALUE(LEFT(C3,3))

VALUE関数とLEFT関数を組み合わせる方法
VALUE関数とLEFT関数を組み合わせる方法

LEFT関数以外にも、RIGHT関数やMID関数もVALUE関数と組み合わせることができます。

以下の記事で、これらの関数の使い方を紹介しているので、参考にしてください。

VALUE関数とTEXTSPLIT関数を組み合わせる

VALUE関数とTEXTSPLIT関数を組み合わせる方法を紹介します。

TEXTSPLIT関数とは、キーとなる文字を指定して文字を分割する関数です。

例えば、TEXTSPLIT関数で「100-200」を「100」と「200」に分割しても、分割した文字は文字列に変換されるので、SUM関数などに利用できません。

こんな時、VALUE関数の中にTEXTSPLIT関数を挿入することで、分割した文字列を数値に変換することが出来ます。

=VALUE(TEXTSPLIT(B3,"-"))

VALUE関数とTEXTSPLIT関数を組み合わせる方法
VALUE関数とTEXTSPLIT関数を組み合わせる方法

TEXTSPLIT関数の使い方は以下の記事で詳しく紹介しているので、参考にしてください。

VALUE関数で先頭の「0」を削除

VALUE関数を使うことで、数値の先頭の「0」を削除することができます。

文字列ではなく数値に変換したい場合に利用します。

VALUE関数で数値の先頭0を削除
VALUE関数で数値の先頭0を削除

VALUE関数を使わず、文字列を一括で数値に変換する方法

VALUE関数を使わずに、文字列を数値に一括で変換することもできます。

下の表のB列の文字列を一括で数値に変換するため、B列の列番号を選択し、「データ」タブの「区切り位置」ボタンを選択します。

区切り位置コマンドを選択
区切り位置コマンドを選択

「区切り位置指定ウィザード1/3」画面が表示されるので、「コンマやタブなどの区切り文字によって・・」の形式を選択し、「完了」ボタンを押して設定を確定させます。

区切り位置コマンドの形式を設定
区切り位置コマンドの形式を設定

そうすると、B列の文字列を一括で数値に変換することができます。

本来、区切り位置コマンドは、特定の区切り文字をキーに文字を分割する機能ですが、書式を数値に変換する時にも役立ちます。

数値への変換が完了
数値への変換が完了

-Excel(エクセル), 数式・関数
-,