Excel(XLSX)を KML に変換

この変換ツールは、緯度・経度、X/Y、または WKT の列を持つ Excel の .xlsx や .xls シートを、Google Earth、Google マイマップ、QGIS 用の KML ファイルに変換します。1行が1つのプレイスマークになり、ほかの列はそのデータとして残ります。ブックはブラウザー内で読み込まれ、アップロードされません。名前に使う列を選べます。住所のジオコーディングは行わないため、シートには座標が必要です。

うまく変換できないファイルがありましたか? [email protected] までメールでお知らせください。小さなサンプルファイルを添えていただけると、修正しやすくなります。

要点

Excel を KML に変換する理由

拠点、サンプル地点、顧客、設備などのリストは、緯度の列と経度の列を持つ Excel ブックで管理されていることがよくありますが、Google Earth が必要とするのは KML です。いったん CSV で保存すると、途中で情報が失われることがあります。Excel がセミコロン区切りや小数点カンマで書き出したり、文字コードが変わったり、0150 のような郵便番号が 150 になったりするためです。この変換ツールは .xlsx をセルの型ごと直接読み込み、座標のあるシートと列を見つけて、1行につき1つのプレイスマークを書き出します。名前には選んだ列の値が使われ、ほかの列はすべてバルーンに表示されます。テキストは先頭の 0 が残り、日付は 2024-05-01 の形で書き出されます。度分秒の座標、Google マップからコピーした「緯度, 経度」の1列、UTM や国の座標系の値(EPSG コードを指定)にも対応します。ダウンロードする前に、ポイントを地図で確認できます。

Excel を KML に変換する方法

  1. .xlsx または .xls ファイルをボックスにドロップするか、クリックして選択します。
  2. 座標の列を確認し、プレイスマークの名前に使う列を選びます。
  3. 「KML に変換」をクリックし、ファイルを Google Earth で開くか、マイマップにインポートします。

知っておきたいポイント

どのシートとどの行が読み込まれるか

このツールは、ヘッダー行に Latitude と Longitude、Lat と Lon、X と Y などの座標の列がある最初のシートを読み込み、スキップしたシートをお知らせします。ヘッダーの上にあるタイトル行や空の行もスキップされます。数式は最後に計算された値として読み込まれ、結合したセルの値は最初のセルにだけ入ります。1つのシートに複数の表が混在している場合は、必要な表を別のシートに移してください。

プレイスマークの名前を選ぶ

Google Earth は各プレイスマークに名前のラベルを付けます。「自動」では、Name という列があればそれを、なければ name、title、label を含むテキストの列を、それもなければ最初のテキストの列を使います。ほかの列や「名前なし」を選ぶこともできます。それ以外の列はバルーンにデータの表として表示されます。Google Earth ではすべての値がテキストとして表示されるため、小数点以下の桁が多い数値は末尾の 0 を省いて書き出されます。

座標のない行

座標が空または読み取れない行は、位置を持たないプレイスマークとして残るため、データは失われません。ただし、Google Earth やマイマップでは地図上に表示できません。該当する行数はページに表示されます。住所は座標に変換されません。

メートル単位の座標

KML の座標は、常に WGS84 の経度・緯度です。724000 と 6176000 のような UTM の東距・北距など、明らかに度でない値の場合は、EPSG:25832 などの EPSG コードの入力を求められ、KML を書き出す前にポイントが WGS84 に座標変換されます。

古い .xls ファイルと Web からのエクスポート

拡張子が .xls の Excel 97-2003 ブックも、数式の計算結果、日付、シートを含めて .xlsx ファイルと同じように読み込みます。Web サイトが .xls という名前でエクスポートする HTML の表やタブ区切りのテキストも同様です。読み取り用のパスワードが設定された .xls や .xlsx は暗号化されているため読み込めません。先にパスワードなしのコピーを保存してください。

ファイル形式について

Excel (XLSX)

XLSX は Excel 2007 以降の Microsoft Excel のブック形式で、LibreOffice、Numbers、Google スプレッドシートも書き出せます。 住所リスト、サンプル地点、資産台帳などは、緯度と経度の列があるスプレッドシートで管理されていることが多いですが、 その列がポイントになるまでは、スプレッドシートは地図データではありません。

  • 1つのブックに複数のシートを入れられ、各シートがヘッダー行のある1つの表になります。
  • セルは数値、日付、テキストといった型を保持するため、0150 のような郵便番号も先頭の 0 を残せます。
  • ジオメトリも座標系もなく、座標は列に並んだ単なる数値です。
  • 古い .xls 形式(Excel 97-2003)は、別のバイナリ形式です。

KML

KML(Keyhole Markup Language)は Google Earth や Google マイマップで使われる XML 形式で、2008 年から OGC 標準にもなっています。 ジオメトリのほか、スタイル、アイコン、フォルダー、HTML の説明文も保持できます。

  • 常に WGS84 の経度・緯度で、高度は省略できます。
  • フォルダーでプレイスマークをまとめ、変換時には各フォルダーを個別のレイヤーにできます。
  • スタイル(色、線の太さ、アイコン)は KML と Google Earth に固有のものです。

よくある質問

スプレッドシートはアップロードされますか?

いいえ。ブックの読み込みと変換はお使いのブラウザーが行うため、顧客リストなどの個人的なデータがお使いのコンピューターの外に出ることはありません。

先にシートを CSV で保存する必要がありますか?

いいえ。.xlsx や .xls ファイルをそのままドロップしてください。すでに CSV がある場合は、CSV を KML に変換するツールで変換できます。

KML を Google マイマップに読み込めますか?

はい。マイマップでレイヤーを追加し、「インポート」をクリックして KML を選んでください。マイマップはプレイスマークの名前をタイトルとして使い、ほかの列を詳細に表示します。マイマップは .xlsx も直接インポートできますが、その場合は10進数の度で表した緯度・経度か、マイマップ自身がジオコーディングする住所が必要です。

シートに線やポリゴンを入れられますか?

はい。LINESTRING (12.56 55.67, 12.57 55.68) や POLYGON (…) のような WKT テキストの列を使えば入れられます。2つの座標の列からは、ポイントしか作れません。

Google スプレッドシートや LibreOffice でも使えますか?

はい。シートを .xlsx(Microsoft Excel)としてダウンロードまたは保存し、そのファイルをここにドロップしてください。