ウェブ上の表をExcelやGoogle スプレッドシートにコピーする方法
手軽に試せる定番の方法から最速の手段まで、確実に機能する4つの方法をご紹介します。作業の頻度やページの複雑さに合わせて最適なものを選びましょう。
1. 選択してコピー&ペーストする
表をマウスでドラッグして選択し、Ctrl+C(Macでは⌘+C)を押し、シート上のセルをクリックしてCtrl+Vを押します。
向いているケース: 1回きりの小さくてシンプルな表。
うまくいかないケース: 表の周囲のテキストまで選択されてしまったり、行が途切れたりする。長い表は選択しづらい。リンク、色、フォントスタイルも一緒にコピーされる(Excelでは形式を選択して貼り付け → テキスト、Google スプレッドシートではCtrl+Shift+Vを使うと解除できます)。[1]のような脚注の記号が数字にくっついてしまう。また、お使いの表計算ソフトの小数点の設定によっては、「1.234,56」のようなヨーロッパ式の数字がテキストとして認識されてしまうことがある。
2. Excel:データ → データの取得 → その他のデータ ソースから → Web から
Windows版Excel(Microsoft 365、2016以降)で、データ → データの取得 → その他のデータ ソースから → Web からを開き、ページのURLを貼り付けて「OK」を押します。Excelが検出した表の一覧が表示されるので、目的の表を選んで読み込みをクリックします。後から更新をクリックすると、最新のデータを再読み込みできます。
向いているケース: 定期的に更新したい公開ページのデータ。
うまくいかないケース: ログインが必要なページ、読み込み後にJavaScriptで表を構築するページ、自動リクエストをブロックしているサイト。これらに該当すると、Excelは何も見つけられないか、間違った表を読み込んでしまいます。また、新しいページを開くたびに何クリックも操作する必要があります。
3. Google スプレッドシート:IMPORTHTML
セルに =IMPORTHTML("https://example.com/page", "table", 1) と入力します。最後の数字はページ内における表の位置を示します(1つ目の表なら1、2つ目なら2、というようになります)。スプレッドシートがセルにデータを自動で取り込み、定期的に更新してくれます。
向いているケース: 共有シート上でリンクを維持したまま使いたい公開ページのデータ。
うまくいかないケース: Excelの「Web から」機能と同じ制限(ログイン必須のページやJavaScript製の表には使えない)があり、表が多数あるページでは何番目の表かを推測する必要がある。また、データ量が多いページでは「Could not fetch URL」といったエラーが表示されたり、タイムアウトになったりする。
4. ブラウザ拡張機能:閲覧中のページでワンクリック
ブラウザに表示されている状態のままページを処理する拡張機能なら、ログインが必要なページやJavaScriptで生成された表でも問題なく動作します。私たちが開発したのが、こちらの Ordelio テーブルコピー(無料、行数制限なし)です:
- ページを開き、拡張機能のアイコンをクリックします(または Alt+Shift+Y を押します)。ページ内のすべての表がサイズ順(大きい順)にリストアップされます。カーソルを合わせると該当の表がハイライトされます。
- コピー をクリックして Excel、Google スプレッドシート、LibreOffice、Numbers に貼り付けます。すべてのセルがそれぞれの列に正確に収まります。または CSV をクリックすれば、文字化けせずに開けるファイル(UTF-8形式、お使いのソフトに合わせた区切り文字)を保存できます。
また、お使いの表計算ソフトの小数点形式に合わせて「1,234.56」と「1234,56」を自動変換し、結合セルを繰り返して列のズレを防ぎ、[1]のような脚注マークも削除してくれます。
うまくいかないケース: 現在画面に表示されている内容をコピーするため、複数ページにまたがる表はページごとにコピーする必要があります。また、方法2や方法3のように自動でデータが更新される機能はありません。
Microsoft Edge 用 Ordelio テーブルコピー を入手 Chrome版およびFirefox版:審査中。
どれを選ぶべきか
| コピー&ペースト | Excel Webクエリ | IMPORTHTML | 拡張機能 | |
|---|---|---|---|---|
| ログインが必要なページ | はい | いいえ | いいえ | はい |
| JavaScript製の表 | はい | できないことが多い | いいえ | はい |
| きれいな列と数字 | できないことが多い | はい | はい | はい |
| 自動更新 | いいえ | はい | はい | いいえ |
| 新しいページの処理時間 | 表が小さければ短い | 約1分 | 約1分 | 数秒 |
要するに:公開ページで継続的に追跡するデータなら、「Web から」や IMPORTHTML でリンクするのがおすすめです。それ以外のケース、特にログインが必要なページであれば、閲覧中のページからコピーするのが最適です。
これらの方法のどれでもうまくコピーできない表を見つけましたか?ぜひお知らせください。すべてのメッセージに目を通しています。