● 「Webページの表をテキストファイルに単純にコピペメモしたもの」を、あとでテキストファイル内で整形して表らしくしたりExcelで見られるようにする方法
※まだ書きかけです。すみません。
※間違ってたらすみません。
★ はじめに
たとえば下図のようなことがしたい場合を考えてみます。
★ 一番簡単な方法→「Webページの表をExcelへ落とす方法」(単純にコピペ)
下図のような感じでWebページの表をExcelシートにコピペします。
まず表の選択ですが、次の(a)か(b)のいずれかの方法でおこないます。
(a)表の左上の隅から、右下の隅までを斜めにドラッグします。
(b)まず表の左上の隅で1セル相当くらいのデータを右にドラッグして選択しておき、そのままの状態で (必要に応じて)PageDownかスクロールバーでのスクロールで表の一番下の右隅を表示させます。
そしてそのタイミングで、Shiftキーを押しながら、表の一番下の右隅をクリックします。
あとは、その選択された状態のまま、Ctrl+C などでコピーし、Excelを開いて、Ctrl+V で シートに貼り付けます。
★ ちょっと難しいけど、便利な方法→UWSCなどを使って自動処理
ちょっと難しいですけど、UWSCという「自動化機能を持たないソフトを自動化して動かすソフト」などを使って、自動的に表データをコピペするか、テキストデータとしてExcelに自動加工・整形吸い込みます。
表として吸い込みたいWebページが数十個以上あったり、あるいは表の個数全体として数十個以上あるような場合には、このような自動処理は効力を発揮すると思います。
具体的な処理方法はここでは割愛します。
自動化でWebページの表データを吸い込む方法は、UWSCを使うほかにも次のような方法があります。
(a)ExcelやAccess、Wordで直接、自動的にWebページを開いて「すべて選択」などで自動コピペをするか、開いたWebページの内容をいったんテキストデータとして自動で吸い込んで、さらにその中で、表データの箇所だけを整形・加工してシート上に自動転記する。
(b)UWSCに似た、ロケットマウスというソフトを使って自動コピペをする
★ Webの表が単なるテキストデータとしてコピペ保存してあるものを手早くExcelに載せる方法
(100%確実ではないですが、列数が少ない場合や、データの切れ目が必ずスペース1個など構造が単調な場合にこの方法で可能です。段階的に使う場合もあります。)
Webの表が単なるテキストデータとしてコピペしてあるだけの場合があります。下図のような状況です。(Webの表をメモ帳やTedaPadなどのテキストエディタ=テキストファイルにコピペするとこんな感じになります)
このとき、列数が2列とかで少ない場合は、置換機能を利用すると、100行、200行あったとしても、手早く以下のような流れで、Excelにデータを貼り付けすることができます。
ポイントは、「列の境目」「列の境界線」に相当する部分(つまりは文字列や改行コードなんですが)を「TAB記号」に一括置換してしまうことです。
例えば上図の例なら、複数のスペースと改行コードをまとめて、TAB記号に置換してしまうことです。
実は、Excelの表データをテキストエディタに貼り付けると、テキストエディタ上の「列データ」は「TAB記号」で区切られます。
その性質から、逆に、テキストファイルをTAB記号で区切ってデータを書くと、それをExcelに「Ctrl+A」で選択してコピペしたときに、TAB区切りことに列データが生成(再現)されます。
なので、テキストデータをExcelに表として貼りつけたいときは、データの区切り区切りを、最終的に「TAB記号」に置換してしまいます。
全角スペース、
半角スペース、
改行記号、
改段落記号、
カンマや句読点等々、
各種記号、
あるいはそれらの複合体・・・
などを 一括で「TAB記号」に置換してしまいます。
そうすると、大抵は、Excelに、列がきちんと生成され、それぞれのセルの中にデータがちゃんと格納された状態に貼りつきます。
で、上図の作業の流れを説明しますと・・・
まず、図(3つの絵)の一番左の絵を見ると、「北海道」と「2.1%」のあいだには、改行コード(改行記号)が2つあります。
そして改行コード(改行記号)の前にスペースがあるっぽいので、全体としては、北海道の末尾についた「スペース+改行コード」と、
その次の行の「スペース+改行コード」のみとで、 「北海道」と「2.1%」のあいだには、
あわせて、「スペース+改行コード+スペース+改行コード」が存在します。
これはどの県のところも同じ「形」になっていて、規則性があります。
なので、その「スペース+改行コード+スペース+改行コード」を、「TAB記号」に一括置換してしまえば、「北海道+TAB記号+2.1%」という状態になります。
これはTedaPadなどのテキストエディタやWordなどで置換処理ができます。(メモ帳ではできないみたいです)
一括置換するので、上図の真ん中の絵のように、他の県のデータも上のほうに一発で揃います。
あとは、「Ctrl+A」ですべて選択して、Excelにコピペし、不要な行を消します。
すると、上図の一番右の絵のようになります。
この時「%」を全部消してからExcelにコピペすると、数字が数値として貼りつくので、より、作業がしやすくなります。計算にも使えます。
「%」を一発で全部消すには、
・置換の対象(検索対象)となる文字列には「%」を指定し、
・置換後の文字列には何も指定しない(空白のままにする)、
という状態で一括置換をかけると、「%」が一瞬で全部消えてなくなります。
これはTeraPadでも、Excel、Word、メモ帳、その他のソフトでも同じ操作です。
★ 各種ソフトでの、改行コードなどの置換
・「TeraPad」の場合
Ctrl+Rで、置換のダイアログを出します。
「¥n=改行, ¥t=TAB, ¥¥=¥(E)」のところにチェックを入れます。(下図)
これをすると、「検索する文字列」に「¥n」と半角で入力すると、それは「改行コードを探せ」「改行コードを置換するんだぜ?」という意味になります。
ダイアログをいったん閉じます。
各県ごとに、「半角スペース+改行コード+半角スペース+改行コード」というまとまりでの、「境目」の繰り返しとなっていますが、TeraPadはいちいち入力しなくても、ドラッグすると、検索文字(置換したい文字列)を自動指定できるのでそうします。
まず、「北海道」の「道」の右側から、「2.1%」の「2」の直前(2の左側)」までを斜めにドラッグします。すると、下図のように、「半角スペース+改行コード+半角スペース+改行コード」が青色反転選択されます。
この青色選択状態のまま、「Ctrl+R」キーを押します。(Ctrlキーを押しながらRキーを押します)
すると、上図のように、置換ダイアログの「検索する文字列」に青色反転選択したものが自動的に入力されます。
今回の例では
「半角スペース+改行コード+半角スペース+改行コード」
という意味で
「 ¥n ¥n 」
が自動入力されます。
あとは、下図のように、「置換後の文字列」に半角で「¥t 」と入れて「すべて置換」を押します。
置き換えますか?と聞かれるので、「すべて」を押します。
「すべて」を押すと一括で、「はい」を押すと1個1個で、置換が開始されます。
以下のようになります。
県名の列と%の列がTAB記号で区切られます。
これを「すべて選択」してExcelにコピペすればOKです。
「%」を全部いっぺんに消したかったら、以下のようなダイアログ設定にして、「すべて置換」→「すべて」を押します。
「%」がいっぺんに全部消えます。
「%」が消えたものをExcelにコピペすると、数値として貼りつくので、そのまま計算に使えます。