Excel で文字列を数値に変換する方法

文書翻訳 文書翻訳
文書番号: 181298 - 対象製品
この記事は、以前は次の ID で公開されていました: JP181298
Microsoft Excel 2002 については、次の資料を参照してください。291047
すべて展開する | すべて折りたたむ

目次

現象

別のプログラム (dBASE や Lotus 1-2-3 など) で作成したファイルや、メインフレームからダウンロードしたファイルをインポートすると、Microsoft Excel で一部の数値がテキストとして認識されることがあります。

このため、SUM や AVERAGE などの関数ではこれらのセルの値が無視されます。これらのテキスト文字列は、数値に変換する必要のあるものだけでなく、実際に文字列であるものもあります。この資料では、文字列を含むセルを数値に変換する方法について説明します。

回避策

ワークシートでテキストを数値に変換するには、次のいずれかの方法を実行します。

: 以下の各手順では、数値の入ったセルの書式を [標準] に設定していることを前提としています。[標準] に設定するには、次の手順を実行します。
  1. [書式] メニューの [セル] をクリックします。
  2. [表示形式] タブの [分類] ボックスの一覧の [標準] をクリックし、[OK] をクリックします。

方法 1 : セルの値を再入力する

[書式] メニューの [セル] をクリックし、[表示形式] タブをクリックしてセルの書式を [数値] に変更します。次に、数値を再入力します。

方法 2 : [セル内で編集する] を選択する

この方法を使用するには、次の手順を実行します。
  1. Windows の場合は、[ツール] メニューの [オプション] をクリックします。Macintosh の場合は、[編集] メニューの [初期設定] をクリックします。
  2. [編集] タブの [セル内で編集する] チェック ボックスがオンになっていることを確認し、[OK] をクリックします。
  3. 書式を設定するセルをダブルクリックし、値を編集した後、Enter キーを押します。

方法 3 : [形式を選択して貼り付け] の [乗算] を使用する

この方法を使用するには、次の手順を実行します。
  1. 空白のセルに値 1 を入力します。
  2. 1 を入力したセルを選択し、[編集] メニューの [コピー] をクリックします。
  3. 数値に変換する値が入力されているセルを選択します。
  4. [編集] メニューの [形式を選択して貼り付け] をクリックします。
  5. [演算] の下の [乗算] をクリックします。[貼り付け] の下の [値] をクリックし、[OK] をクリックします。

方法 4 : 隠し文字とスペースを削除する

この方法は、データが 1 列または 1 行に配置されている場合に有効です。この方法では、TRIM 関数と CLEAN 関数を使用して、ファイルのインポートなどで発生した余分なスペースと印刷されない文字を削除します。以下に示すのは、データが列 A にあり、1 行目 ($A$1) から始まる場合の例です。この場合には、以下の手順を実行します。
  1. 列 B を選択し、[挿入] メニューの [列] をクリックして、列 A の右側に列を挿入します。
  2. 挿入された列の先頭のセル (B1) に、次の数式を入力します。
          $B$1:   =VALUE(TRIM(CLEAN(A1)))
    					
  3. データが入力されている列 A のセルの右側にある列 B のセルをすべて選択します。
  4. [編集] メニューの [フィル] をポイントし、[下方向へコピー] をクリックします。

    新しい列に列 A の文字列が入力されます。
  5. 同じ範囲を選択したまま、[編集] メニューの [コピー] をクリックします。
  6. セル A1 を選択し、[編集] メニューの [形式を選択して貼り付け] をクリックします。[貼り付け] の下の [値] をクリックし、[OK] をクリックして、変換した値を列 A の先頭に貼り付けます。
  7. 列 B を選択し、[編集] メニューの [削除] をクリックして、列 B を削除します。
これで、列 A の文字列が数値になります。

方法 5 : Visual Basic for Applications のプロシージャを使用する

マイクロソフトは、この情報をプログラミング言語の使用方法の一例として提供するだけであり、市場性および特定目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。この資料は、例示されているプログラミング言語やプロシージャの作成およびデバッグに使用するツールについて理解されているユーザーを対象としています。Microsoft Support 担当者は、特定のプロシージャの機能についての問い合わせにはお答えできますが、ユーザー固有の目的に合わせた機能の追加、プロシージャの作成などの内容変更は行っておりません。 選択したセルやセルの範囲の数値を再入力する VBA マクロを作成します。以下の手順を実行します。
  1. 現象の発生しているセルを選択します。
  2. まだ表示形式を変更していない場合は、[書式] メニューの [セル] をクリックし、[表示形式] タブをクリックし、セルの表示形式を変更します。
  3. [ツール] メニューの [マクロ] をポイントし、[Visual Basic Editor] をクリックします。
  4. [挿入] メニューの [標準モジュール] をクリックします。
  5. 次のマクロ コードを新しいモジュールに入力します。
          Sub Enter_Values()
              For Each xCell In Selection
                  xCell.Value = xCell.Value
              Next xCell
          End Sub
    					
  6. [ファイル] メニューの [終了して Microsoft Excel へ戻る] をクリックします。
  7. 対象のセルをまだ選択していない場合は、選択します。
  8. [ツール] メニューの [マクロ] をポイントし、[マクロ] をクリックします。[マクロ名] ボックスの一覧の [Enter_Values] をクリックし、[実行] をクリックします。

方法 6 : [区切り位置] を使用する

この方法は、データが 1 列に配置されている場合に最適です。以下に示すのは、データが列 A にあり、1 行目 ($A$1) から始まる場合の例です。この場合には、以下の手順を実行します。
  1. 文字列を含む 1 列のセルを選択します。
  2. [データ] メニューの [区切り位置] をクリックします。
  3. [元のデータの形式] の下の [カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ] をクリックし、[次へ] をクリックします。
  4. [区切り文字] の下の [タブ] チェック ボックスをオンにし、[次へ] をクリックします。
  5. [列のデータ形式] の下の [G/標準] をクリックします。
  6. [詳細] をクリックし、[小数点の記号] と [桁区切り記号] を必要に応じて設定します。[OK] をクリックします。
  7. [完了] をクリックします。
文字列が数値に変換されます。

関連情報

セルの書式設定の詳細については、[ヘルプ] メニューの [Microsoft Excel ヘルプ] をクリックします。次に、Office アシスタントまたはアンサー ウィザードにセルの書式設定と入力し、[検索] をクリックして表示されるトピックを参照してください。

プロパティ

文書番号: 181298 - 最終更新日: 2011年9月19日 - リビジョン: 3.0
この資料は以下の製品について記述したものです。
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 2001 for Mac
  • Microsoft Excel 97 Standard Edition
キーワード:?
kbimport kbconversion kbprb KB181298
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com