【関数】セルの値のデータ型を特定できる「TYPE」の使い方
AさんAさん

見た目は日付や時刻なのに、たまに文字列化されていてExcelの機能が使えない場合があります。。
文字列かどうかを見分ける良い方法はないですかね?

森田森田

その場合は、関数のTYPEを活用すると良いですよ!
では、TYPEの使い方について解説していきますね。

はじめに

この記事は関数の概要を把握していることが前提です。

参考記事

関数の概要については以下の記事をご参照ください。

エラーチェックが機能しない場合は「TYPE」が有効

Excelはセルの値とデータ型が不一致の場合、エラーチェックという機能でセルへエラーインジケーター(セルの左上隅に表示される緑の三角形)を表示してくれます。

これにより、ユーザーはデータ型の修正を行う必要があると認識することが可能です(場合によっておせっかいな場合もありますが)。

ただし、日付/時刻でデータ型が不一致の場合など、エラーインジケーターが表示されないケースもあります。

これでは、日付や時刻を対象にした機能を使えない場合など、データ型の不一致が起きているか調べたい時に困ってしまいます。

こんな場合、関数の「TYPE」を使うことで、セルの値のデータ型を特定することが可能となります。
ちなみに、TYPEは「タイプ」と呼びます。

よって、セルの値のデータ型を特定したい場合はTYPEを使用していきましょう。

参考記事

エラーチェック/エラーインジケーターの詳細は、以下の記事をご参照ください。

TYPEの構文

TYPEの構文は以下の通りです。

=TYPE(値)
値のデータ型を表す整数(数値=1、文字列=2、論理値=4、エラー値=16、配列=64、複合データ=128)を返します。

引数名 必須 データ型 説明
すべて データ型を調べたい対象のセルを指定します。

基本的にTYPEの戻り値は「1(数値)」か「2(文字列)」のパターンを覚えればOKです。
セルの値が日付/時刻の場合、TYPEの戻り値は「1(数値)」となります。Excel上の時刻/時刻は「シリアル値」という数値(190011日を起点に何日目かをカウントした数値)で管理されているためです。

【参考】TYPEは「情報関数」

あくまで参考情報となりますが、TYPEはリボン「数式」タブの関数ライブラリの「情報」に分類されています。

実際にTYPEを活用する際は、以下で解説しているように直接入力で挿入していきましょう。

TYPEの使用結果イメージ

TYPEでセルの値のデータ型を特定したイメージは以下の通りです。
今回は「日付」列のデータ型を調べました。

結果は「2」のため、「日付」列のデータ型は「文字列」であることが分かりました。

あとは必要に応じてデータ型を正しいものに変換するなど対応しましょう。

なお、TYPEは原則一つの関数で一つのセルのみが特定対象です。

ベースの数式をセットしたら、他のセルへペーストしましょう。

【参考】TYPEは他の関数の戻り値を知りたい場合にも有効

複数の関数を組み合わせて(ネストして)使う場合、メインとなる関数の引数のデータ型と、サブとなる関数の戻り値のデータ型が一致していないとエラーになってしまいます。

よって、サブとなる関数の戻り値のデータ型が分からない場合は、TYPEで事前に調べると手戻りが減ります。

その際、調べたい関数をTYPEにネストしましょう。

たとえば、指定する引数の種類で戻り値が変わるOFFSETをネストした場合、このようにTYPEの戻り値が変わります。

ご覧の通り、3種類の引数の場合は「2(文字列)」でしたが、5種類の引数の場合は「64(配列)」であることが分かりました。

参考記事

OFFSETの詳細については以下の記事をご参照ください。


TYPEの数式の挿入手順

上記の結果を得るための手順は以下の通りです。

  1. 関数を挿入するセルを選択
    ※今回はI2セル
  2. =ty」と入力
  3. サジェストから「TYPE」を選択し、「Tab」キーで確定
  4. 変換対象のセルを選択
    ※今回はB2セル
  5. Enter」キーで確定
  6. 1行目の数式をコピーし、以降のセルへペースト
    ※今回はH3~H11セルへペースト

手順②の際にIMEを半角英数モードにすること。
テーブルの場合、手順⑥は不要(全レコードへ数式が自動的にコピーされる)。

サンプルファイルで練習しよう!

可能であれば、以下のサンプルファイルをダウンロードして、実際に操作練習をしてみてください。

サンプルファイル_ワークシート関数_TYPE.xlsx

※サンプルファイルのダウンロードには無料メルマガに登録いただく必要があります。
(上記リンクから登録フォームへ遷移します)

ブックを開いたら、次の手順を実施してください。(今までの解説のまとめです)

  1. 関数を挿入するセルを選択
    ※今回はI2セル
  2. =ty」と入力
  3. サジェストから「TYPE」を選択し、「Tab」キーで確定
  4. 変換対象のセルを選択
    ※今回はB2セル
  5. Enter」キーで確定
  6. 1行目の数式をコピーし、以降のセルへペースト
    ※今回はH3~H11セルへペースト

本記事の解説と同じ結果になればOKです!

さいごに

いかがでしたでしょうか?

TYPEはデータ型の特定に役立つ関数のうちの一つです。

不具合があった時にデータ型が原因かどうか調べる機会があるなら、ぜひ覚えておいた方が良いですね。

なお、TYPE以外にもExcelでのデータ整形の各種テクニックを拙著で解説していますので、こちらも参考にしてみてください。



ご参考になれば幸いですm(_ _)m

森田森田

TYPEとセットで覚えておいた方が良い関数は、データ型の変換に役立つVALUEDATEVALUETIMEVALUEです。
複数の関数をネストして思い通りの結果が得られない場合に、原因を特定する際にも役立ちますので、ぜひ覚えておきましょう。