PowerQueryの列追加で型指定したら、条件列で「演算子 を型 Number および Text に適用できません」が発生した

Power Queryに慣れてくると、ステップ数を減らしたくなりませんか？
私はなります。
そして頑張ってステップ数を減らした結果、エラーが発生しました。
同じ事象にぶち当たっている方の参考になれば幸いです。

### 【やりたかったこと】
サンプルのテーブル
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/743c2e69-1acd-221c-8e23-e7e0bcc634de.png)

* 開始時刻データを「時(Hour)」と「分(Minute)」に分割
* 分割後の「時(Hour)」の値が10時以降の場合、「10時以降です」と新規列に表示する

ゴールイメージ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/3e9b0515-0998-fd74-62af-0f47af8a651c.png)



それでは早速データを読み込み、ステップを作成していきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/c66b7ac9-831d-75f8-ee8e-ecc650fb5065.png)

（以下コードは「詳細エディター」よりコピペしたものです）
```Power Query M
let
    ソース = Excel.CurrentWorkbook(){[Name="テーブル1"]}[Content],
    区切り記号の前に挿入されたテキスト = Table.AddColumn(ソース, "区切り記号の前のテキスト", each Text.BeforeDelimiter([開始時刻], ":"), type text),
    変更された型 = Table.TransformColumnTypes(区切り記号の前に挿入されたテキスト,{{"区切り記号の前のテキスト", Int64.Type}}),
    追加された条件列 = Table.AddColumn(変更された型, "開始時刻判定", each if [区切り記号の前のテキスト] >= 10 then "10時以降です" else null)
in
    追加された条件列
```

元の「開始時刻」列は残しておきたかったため、「列の分割」ではなく「列の追加(Table.AddColumn)」で開始時刻からHour・Minuteを抽出しました。

### 【データの型変更】
今回読み込んだ「開始時刻」は「08:45」のように秒数がなく、ゼロパディングされています。
そのため値は「テキスト型」として認識されています。

最終的には「Hourが10時以降か」という数値の比較を行いたいので、型変更（Table.TransformColumnTypes）で整数(Int64.Type)を指定しました。

### 【ステップを減らす】
ここで「列の追加(Table.AddColumn)」に戻って引数を確認すると、「type text」と型の指定が行われていることに気が付きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/63cf7315-1f65-5223-2401-58967a8de1c0.png)

これって、初めからこの引数に整数(Int64.Type)を指定おけば、その次の「型の変更」ステップを削除できるのでは・・・？

ということで、ステップを以下のように変更してみました。
```Power Query M
let
    ソース = Excel.CurrentWorkbook(){[Name="テーブル1"]}[Content],
    // Table.AddColumnの引数で型を指定する
    区切り記号の前に挿入されたテキスト = Table.AddColumn(ソース, "区切り記号の前のテキスト", each Text.BeforeDelimiter([開始時刻], ":"), Int64.Type),
    // 型変更ステップは削除
    追加された条件列 = Table.AddColumn(区切り記号の前に挿入されたテキスト, "開始時刻判定", each if [区切り記号の前のテキスト] >= 10 then "10時以降です" else null)
in
    追加された条件列
```

### 【エラー発生】
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/39951c87-5c5e-29c7-d337-ea690bf06585.png)

勘のいい方は↑のキャプチャを見た時点でお気づきかもしれません。
Hour（区切り記号の前に挿入されたテキスト）列のヘッダーが「123」と整数アイコンになっているにも関わらず、値は「08」などゼロパディング（＝テキスト型として認識）されています。
※勘の悪い私はここで何も気づかず、ハマりまくりました。

そして、先ほどまで問題なかった「Hourが10時以降か」の条件列でエラーが発生しています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/6ad3c3e5-2eb0-b02e-b716-dee7a5471a33.png)

```Power Query M
Expression.Error: 演算子 < を型 Number および Text に適用できません。
詳細:
    Operator=<
    Left=10
    Right=08
```

Power Queryに限った話ではないですが、エラーメッセージって初心者には呪文にしか見えません。
「つまり何をすればいいの？」ってしばらく悩みました。。

### 【解決策】
ステップを減らすのは諦め、最初に作成したステップ（列追加でテキスト型指定後、整数に型変更）に戻したところ、エラーは解消されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2780252/527d9bbc-af8f-bfb0-5f57-b0b83745037e.png)

初心者的には、Table.AddColumnの引数で型指定するのと、Table.TransformColumnTypesで後から型指定するの、どう異なるのかが分かりません…。
何か分かれば追記しようと思います。

### 【補足】
今回のサンプルデータは開始時刻が全てHH:MM形式で入力されている前提としています。
もし「未入力の場合はハイフンが入る」などの場合は、整数型へ変換できないので更に注意が必要ですね…。

###### 【参考情報】
実際のデータでは正確な時間計算が必要だったため、以下サイトを参照に時・分値を分割して使用しました。
HH:MM形式の時刻を扱う際は注意です（自戒）。

https://www.excelspeedup.com/jikan/