Microsoft 公式サイトから列挙体のテーブルをインポートする

 既知の情報だったら申し訳ないが,個人的に印象的だったので備忘録として公開する.これまではオブジェクトブラウザーからコピペしていたのだが,公式サイトから Power Query でテーブルをまるごとインポートできるようだ.

日本語サイトだと値が重複するので,英語サイトで

 今回の例は Office ライブラリの言語 ID のテーブルである.最初日本語サイトでインポートを試みたが,値が重複して取得されてくる.

Officeライブラリの言語IDのテーブルの日本語サイト
Officeライブラリの言語IDのテーブルの日本語サイト
https://docs.microsoft.com/ja-jp/office/vba/api/office.msolanguageid

 この場合,英語サイトのほうが使い勝手が良い.URL の /ja-jp/ を /en-us/ に書き換えて URL をコピーする.

https://docs.microsoft.com/en-us/office/vba/api/office.msolanguageid

Power Query で Web から

EXCEL の『データ』『Web から』で URL を貼り付け

サイトのURL
サイトのURL

Web コンテンツへのアクセス

 初回のみ,下図のように『Web コンテンツへのアクセス』が示され,二度目以降は表示されなくなる.端末のどこかに接続情報が保存されるのだと思う.『匿名』,『Windows』,『基本』,『Web API』,『組織アカウント』の 5 種類がある.今回は匿名のままで進める.

Web コンテンツへのアクセス
Web コンテンツへのアクセス

 『これらの設定の適用対象レベルの選択』はポップアップメニューとなっており,順に階層が深くなっていく.

これらの設定の適用対象レベルの選択
これらの設定の適用対象レベルの選択

 最も深い階層を指定する.

最も深い階層を指定
最も深い階層を指定

『ナビゲーター』でテーブルを選択

 仕組みはよく分かっていないのだが,下図のように表示された場合,テーブル名を選択しておくと間違いがない.

『ナビゲーター』でテーブルを選択
『ナビゲーター』でテーブルを選択

そのまま『読み込み』をクリック

 これ以上細工する必要もないため『読み込み』をクリックする.日本語サイトだとテーブルの値が重複して読み込まれるため,後の処理が大変になる.

そのまま『読み込み』をクリック
そのまま『読み込み』をクリック

『クエリと接続』で読み込まれた結果

 ワークシートが新規に追加されて 216 件のデータが取得される.

『クエリと接続』
『クエリと接続』

今後の課題

 今回はたまたま LangeageID を例に挙げたが,列挙体やオブジェクトモデルなど,公式には膨大な情報がある.Office の膨大なオブジェクトモデルを理解するのに欠かせない手法と思われる.

“Microsoft 公式サイトから列挙体のテーブルをインポートする” への1件の返信

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

This site uses Akismet to reduce spam. Learn how your comment data is processed.