• ベストアンサー

毎日潮見表をエクセルのファイルに反映させるには?

例えば1シートめが8月1日で8月31日までシートが分かれています。毎日その日の潮見表をその日のシートに反映させる方法はありますか? たとえば以下のサイトの江ノ島潮見表をエクセルのその日のシートに反映できますでしょうか? http://anglr.me/tides/124 過去分は過去のものを残したいです。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • shintaro-2
  • ベストアンサー率36% (2266/6245)
回答No.2

webクエリで検索してください。

参考URL:
http://iinamotto.com/2013/06/1041.html
peace5577
質問者

補足

回答ありがとうございます。非常に為になります。 1日だけを反映させるのは可能でしょうか?反映させたいのは各シートは1日づつ分かれているのでその日だけの情報の干潮、満潮の数字をタイド表のみ反映させたいです。もし良い案がありましたらよろしくお願いいたします。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

以下は、プログラムというものに関心がない人には、「猫に小判」でしょうから、無視してください。もし、「そういうこともあるのか」と興味がわいたら、良いと思いますが。 VBAのちょっとした部分を必要な分だけを勉強すればよいのです。 ーーー (毎日・毎回の操作の自動化) エクセルのシートを開いて、ALT+F11キーを押す(+とは同時に2キーを押すことを示す) VBE画面という画面になる。 そこでメニューの挿入ー標準モジュール の操作をして、出てきた白紙の画面に下記コードをコピペする。 (下記はWEB上のコードをほとんど使っている。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1187099611 ) WEB画面のコピーのところ以外は定番のもの。 ーー以下がVBAコード Sub Sample1() Dim IE As Object Dim t As Single Dim WS As Worksheet Cells.Clear t = Timer Set IE = CreateObject("InternetExplorer.application") With IE .Visible = True .Navigate "http://anglr.me/tides/124" Do While .Busy = True DoEvents Loop Do Until .Document.Readystate = "complete" DoEvents Loop .ExecWB 17, 2, 0, 0 .ExecWB 12, 2, 0, 0 End With Set WS = Worksheets.Add With WS .Cells.Clear .Paste Range("A1") .Hyperlinks.Delete .DrawingObjects.Delete .UsedRange.EntireColumn.AutoFit With Application .CutCopyMode = False .ScreenUpdating = True End With With .Cells .WrapText = False .Orientation = 0 .AddIndent = False .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False .Rows.AutoFit .HorizontalAlignment = xlGeneral .VerticalAlignment = xlCenter End With End With IE.Quit Set IE = Nothing 'MsgBox "処理時間: " & Format((Timer - t) / 60 / 60 / 24, "h:mm:ss"), 48 ActiveSheet.Cells.Find("観測地点の位置情報").Activate MsgBox ActiveCell.Row MsgBox ActiveCell.Offset(8, 0) 'やっていることの説明は下記 End Sub ーー これでF5キーを押すと実行され、数秒でアクチブシートにWEB画面の内容(テキスト)が貼りつく。 そして、(模擬例として)「観測地点の位置情報」という文言のシート上の位置を探してくれる。 この、「観測地点の位置情報」を好みの見出し文句に(一言一句正確に)修正して、 その行の「何行目下に目指すデータがあるか」を探すためのコードの追加修正をします。 たとえば MsgBox ActiveCell.Offset(8, 0)で「住所」の8行下の「神奈川県藤沢市」が、プログラム的に得られます。 このように、ほしい1項目の取得ずつを繰り返して、取得したデータの一部を別シートなどのセルに持ってきて配置して、望みのデータ項目群を完成させます。 ーー (常識) WEBの表示データは、作成者の都合で、無断で項目の有無や表示の場所が変えられる場合があるので、上記はそういう事態になったら、多少の修正が必要です。サイトそのものが廃止されることも多い。ですから不安定ともいえる。 === (連続日・毎日の自動化) もう一つ、毎日など定刻に自動で上記操作を繰り返す仕組みのコードもWEBに載ってます。ここでは省略。 「エクセルVBA 定時に実行」などで検索すれば、記事が見つかります。

  • hayasi456
  • ベストアンサー率40% (2402/5878)
回答No.3

趣旨が理解できていないかもしれませんが 必要な部分を選択しコピー Excelで貼り付けでできるようです。

peace5577
質問者

お礼

ファイルを開いたときにコピペせずに更新できるようにしたいという趣旨です。 ありがとうございました。

  • Gletscher
  • ベストアンサー率23% (1525/6504)
回答No.1

潮見表ではなくて、潮汐表ですね? そんなことしなくも、↓の潮汐表なら過去も未来も、いつでも見られますよ。 それに、MS-EXELに読み込むにも1ヶ月単位でコピーできますよ。

参考URL:
http://www.data.jma.go.jp/kaiyou/db/tide/suisan/suisan.php

関連するQ&A