webに表示されているnavitimeのバス時刻表を平日、土曜、日曜祝日まとめて文書を作って印刷
このようなご要望がありました簡単にできると思ってやってみましたが、思わぬ落とし穴がありましたまず、文字情報の表として取り込む画面から文字を選択して、ワードやexcelにペーストしてみました見るからに使い物になりませんスクリーンショットでは画面に入りきらないので、縮小してカットぺースト画像を大きくするとボケるedgeでページ自体のスクショを撮ります画面の背景で右クリック・スクリーンショット・ページ全体をキャプチャ・保存平日、土曜、日曜祝日の3枚を撮って、パワーポイントに貼り付けましたトリミングでいらない部分を削除して、大きさをそろえればいいですこれも残念、画像がボケています結局うまくいきません原因はホームページで表示されている時刻表がCSSで表らしく見せているので、文字情報を取得しても表形式にはならないからです。スクレイピングで取得した文字情報だけでは、表を作るには情報が不足しています。手作業で修正が必要ですさあこんなことはAIに任せましょうプロンプトは「時刻表の作成についてhttps://www.navitime.co.jp/diagram/bus/00102480/00025236/0/にある時刻表をhtmlのtableタグで作ってください一列目に時刻、二列目に平日、3列目に土曜、4列目に日曜祝日にしてください行き先(横浜駅西口方面)通常ダイヤ(最新の平日・土曜・日曜祝日)それぞれのダイヤは、ページ内の平日・土曜・日曜祝日ボタンを押すことにより表示されます」HTMLで出力されるのでファイルに保存して、excelにドロップしますブラウザで表示するとexcelに取り込むと後は微調整ですAIはもはや単なる知識を教えてくれるものから、代わりに作業を行ってくれるまで進化していますいかに使いこなすかが、これからの課題!「東」の文字を小さくしたいがどうすればいいのだろう。EXCELの機能では一括変換はできないaiに聞いてみようプロンプトは「」Sub ChangeFontForHigashi() Dim rng As Range Dim c As Range Dim pos As Long ' 対象範囲を選択中のセルに設定 Set rng = Selection For Each c In rng If c.Value <> "" Then pos = InStr(1, c.Value, "東") Do While pos > 0 ' 「東」を1文字だけ対象にフォントサイズ変更 c.Characters(pos, 1).Font.Size = 8 ' ←ここでサイズ指定 ' 次の「東」を探す pos = InStr(pos + 1, c.Value, "東") Loop End If Next cEnd Sub開発タブでマクロを登録して、範囲を選択して、マクロを実行しました行先で色を変えてみましょうプロンプトは「」