Microsoft Excelで日付を数値に変換する方法



Excelシートで日付を使うのはよくあることですが、読みやすい日付ではなく、シリアル番号で日付を表示したい場合はどうすればよいでしょうか?計算に使う場合や、他の場所にデータをインポートする際に処理を簡素化したい場合などです。しかし、日付はテキスト形式や奇妙な形式で保存されている場合があり、変換が少々面倒になることがあります。このガイドでは、日付をシリアル番号(Excelが日付を数値として保存する方法)に変換する最も簡単な方法を解説します。これで、必要な用途に日付を活用できるようになります。

少し奇妙に思えるかもしれませんが、日付の形式(テキスト vs 数値)を知っておくと、全く違ってきます。日付または数値としてフォーマットされている場合は、変換は簡単です。テキストとして保存されている場合は、「DATEVALUE」などの数式を使って少し手間がかかります。便利な関数、ショートカット、そして作業をスピードアップできるヒントもいくつか紹介します。Excelは、ユーザーの操作を常に把握できるように、単純なタスクを複雑にしているからです。

日付のフォーマット方法を決定する

変換作業に入る前に、Excelが日付をどのように保存しているかを確認する必要があります。日付は見た目は問題ないように見えても、実際にはテキストとして保存されている場合があります。特に、外部ソースから取得したりインポートしたりした場合はそうです。確認するには、日付が入ったセルをクリックし、「ホーム」タブの「数値の書式」ドロップダウンを探します。 「日付」と表示されていれば、おそらく問題ありません。しかし、 「標準」または「テキスト」と表示されている場合は、もう少し作業が必要になるかもしれません。

ちょっとしたヒント:日付の前に小さなアポストロフィが付いている場合(例:’01/01/2024)、それはテキストとして保存されていることを示しています。設定によっては、日付としてフォーマットされた日付が数値として扱われる場合もありますが、テキストとして扱われる場合もあります。以下の関数を使って確認してください。

日付がたくさんある場合、最も簡単な方法はISNUMBERまたはISTEXT を使うことです。範囲を確認するには、=ISNUMBER(A2:A13)空のセルに入力します。TRUE の場合は数値、FALSE の場合はおそらくテキストです。

同様に、=ISTEXT(A2:A13)日付が文字列としてフォーマットされているかどうかも確認できます。単一のセルの場合は、A2をチェック対象のセルに置き換えるだけです。こうすることで、既に数値として保存されているデータを変換する時間を無駄にせずに済みます。

数値日付をシリアル値に変換する

日付が数字のように見えるのにシリアル番号が表示されない場合は、おそらく書式設定の問題です。Excelでは日付は1(1900年1月1日)から始まるシリアル番号として保存されます。シリアル番号を表示するには、セルの書式設定を「数値」に切り替える必要があります。

  • まず、日付が含まれるセルまたは範囲を選択します。
  • [ホーム]タブに移動し、[数値形式]ドロップダウンを開いて、[数値]を選択します。
  • この時点で、これらのセルにシリアル番号が表示されるはずです。おそらく 44567 などの完全に謎めいたものになっているでしょう。
  • 数値に小数点がある場合(時々あるのですが)、同じタブの「小数点以下を減らす」ボタンをクリックして小数点を削除できます。よりきれいな整数にしたい場合は、小数点を0に設定してください。

覚えておくと良いこと: これを 1 つの手順で実行したい場合は、セルを右クリックし、[セルの書式設定] ( Ctrl + 1Windows の場合 、 Mac の場合 ) を選択して、 [数値]Command + 1を選択し、小数を 0 に設定します。簡単です!

数値が小数点付きで表示されていて、すぐに整数にしたい場合があります。通常はこのように書式を変更するだけで十分ですが、計算に使用する実際の値をシリアル番号にしたい場合は、後から値としてコピー&ペーストすることもできます。

日付を小数点なしの数値に変換する

整理整頓したいですか?小数点以下の数値を一括で変換して削除しましょう。「セルの書式設定」ダイアログで小数点以下の桁数を0に設定し、「OK」をクリックします。これで、日付が必要なシリアル番号に変換されます。これは、データを他のシステムにコピーしたり、一括操作を行ったりする場合に特に便利です。

テキスト日付をシリアル番号に変換する

日付がうまく動作せず、テキストとして保存されている場合(例:’01/01/2024’)、DATEVALUE関数を使って変換する必要があります。この関数は、テキスト形式の日付をシリアル値に変換するもので、Excelがネイティブに理解できない言語から翻訳するようなものです。

これを行うには、のような数式を使用します=DATEVALUE(A2)。これを範囲全体にドラッグすると、一度にすべての日付を変換できます。数式が適用されると、セルに数字(シリアル日付)が表示されます。

プロのヒント:元のテキスト日付をシリアル番号に置き換えたい場合は、数式の結果をコピーし、右クリックして「形式を選択して貼り付け」>「値」を選択します。これですべてが数値化され、計算の準備が整います。

特定の日付をお考えですか? のように引用符を使って数式に直接入力できます=DATEVALUE("1/1/2024")。ただし、システムの日付形式が異なる場合は、日付文字列を適宜調整する必要があるかもしれません。そうしないと、エラーが発生したり、間違った結果が返されたりする可能性があります。

その他のヒントとコツ

CSVファイルやインポートしたデータの日付で問題が発生したことはありませんか? おそらくテキスト形式で保存されているので、DATEVALUE関数を使うのが最も簡単な解決策です。また、もしうまくいかない場合は、Excelの書式設定をもう一度確認してください。Excelは書式設定がおかしくなることがあるからです。

念のため、Winhanceという GitHub プロジェクトがあります。これは、表示の調整と簡単なフォーマット設定に重点を置いていますが、これらの調整の一部を自動化するのに役立ちます。

まとめ

  • 日付がどのように保存されているか(数値かテキストか)を確認します。
  • 書式を表示または変更するには、「セルの書式設定」を使用します。
  • 必要に応じて、 DATEVALUEを使用してテキストをシリアル番号に変換します。
  • 数値形式と小数点を設定して、シリアル番号を簡単に表示できるように書式を変更します。

まとめ

Excelで日付を数値に変換するのは、フォーマットさえ理解してしまえばそれほど難しくありません。日付が既に数値で保存されている場合でも、テキスト形式で保存されている場合でも、変換してシリアル値を取得する方法があります。少し面倒ですが、一度理解してしまえば、あとは簡単です。この方法が、今後頭を悩ませる問題を少しでも軽減してくれることを願っています。Excelの癖は面倒なこともありますが、対処可能な範囲です。



この記事は役に立ちましたか?