{"id":29,"date":"2016-09-27T07:19:20","date_gmt":"2016-09-26T22:19:20","guid":{"rendered":"http:\/\/okamurax.com\/?p=29"},"modified":"2016-09-27T07:19:20","modified_gmt":"2016-09-26T22:19:20","slug":"vba-ie%e3%82%92%e8%b5%b7%e5%8b%95%e3%81%97%e3%81%a6%e6%a4%9c%e7%b4%a2%e9%a0%86%e4%bd%8d%e3%82%92%e8%aa%bf%e3%81%b9%e3%82%8b","status":"publish","type":"post","link":"https:\/\/appbay.org\/?p=29","title":{"rendered":"VBA IE\u3092\u8d77\u52d5\u3057\u3066\u691c\u7d22\u9806\u4f4d\u3092\u8abf\u3079\u308b"},"content":{"rendered":"<p>\u7279\u5b9a\u306e\u30ef\u30fc\u30c9\u3067\u30c9\u30e1\u30a4\u30f3\u304c\u4f55\u756a\u76ee\u306e\u30da\u30fc\u30b8\u306b\u3044\u308b\u304b\u3092\u77e5\u308a\u305f\u3044\u3068\u304d\u306b\u3002<br \/>\nA\u5217\u306b\u30c9\u30e1\u30a4\u30f3\u540d\u3001B\u5217\u306b\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u5165\u308c\u3066\u4f7f\u3046\u3002<\/p>\n<pre class=\"lang:vb decode:true\">'\u53c2\u7167\u8a2d\u5b9a\r\n'Microsoft HTML Object Library\r\n'Microsoft Internet Controls\r\n\r\n#If VBA7 Then\r\n  Private Declare PtrSafe Sub Sleep Lib \"kernel32\" (ByVal ms As LongPtr)\r\n#Else\r\n  Private Declare Sub Sleep Lib \"kernel32\" (ByVal ms As Long)\r\n#End If\r\n\r\nSub ieWait(obj As InternetExplorer)\r\n\r\nDo While obj.Busy = True Or obj.ReadyState &lt;&gt; 4\r\n  DoEvents\r\n  Sleep 1000\r\nLoop\r\n\r\nDo While obj.document.ReadyState &lt;&gt; \"complete\"\r\n  DoEvents\r\n  Sleep 1000\r\nLoop\r\n\r\nSleep Int((3000 - 1000 + 1) * Rnd + 1000)\r\n\r\nEnd Sub\r\n\r\nSub auto_open()\r\n\r\nApplication.CommandBars(\"cell\").Reset\r\n\r\nWith Application.CommandBars(\"cell\").Controls.Add\r\n\r\n  .OnAction = \"main\"\r\n  .Caption = \"KeyCheck\"\r\n\r\nEnd With\r\n\r\nEnd Sub\r\n\r\nSub auto_close()\r\n\r\nOn Error Resume Next\r\n\r\nFor i = 1 To 2\r\n\r\n  Application.CommandBars(\"cell\").Controls(\"KeyCheck\").Delete\r\n  \r\nNext i\r\n\r\nEnd Sub\r\n\r\nSub main()\r\n\r\nDim ie As InternetExplorer\r\nSet ie = CreateObject(\"InternetExplorer.Application\")\r\n\r\nWith ie\r\n\r\n  .Visible = True: .Top = 0: .Left = 0: .Width = 500: .Height = 500\r\n  \r\nEnd With\r\n\r\nc = 9\r\n\r\nDo While Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(1, c).Value &lt;&gt; \"\"\r\n\r\n  c = c + 1\r\n  \r\nLoop\r\n\r\nSheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(1, c).Value = Month(Date) &amp; \"\/\" &amp; Day(Date)\r\n\r\nr = 2\r\n\r\nDo While Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(r, 1).Value &lt;&gt; \"\"\r\n\r\n  Call func(r, c, ie)\r\n  \r\n  r = r + 1\r\n\r\nLoop\r\n\r\nie.Quit\r\nSet ie = Nothing\r\n\r\nMsgBox \"done\"\r\n\r\nEnd Sub\r\n\r\nSub func(r, c, ie As InternetExplorer)\r\n\r\nie.navigate \"http:\/\/www.yahoo.co.jp\"\r\n\r\nCall ieWait(ie)\r\n\r\nie.document.getElementById(\"srchtxt\").Value = Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(r, 2).Text\r\nie.document.getElementById(\"srchbtn\").Click\r\n\r\nCall ieWait(ie)\r\n    \r\nIf InStr(ie.document.body.innerText, Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(r, 1).Text) &lt;&gt; 0 Then\r\n\r\n  Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(r, c) = 1\r\n  \r\n  DoEvents\r\n  Sleep Int((3000 - 1000 + 1) * Rnd + 1000)\r\n  \r\n  Exit Sub\r\n\r\nElse\r\n\r\n  ie.navigate \"JavaScript:scrollTo(0,\" &amp; ie.document.body.ScrollHeight &amp; \")\"\r\n      \r\nEnd If\r\n\r\nFor pages = 2 To 10\r\n\r\n  For Each anchor In ie.document.all.tags(\"a\")\r\n    \r\n    If Len(anchor.Text) &lt;= 2 And Val(anchor.Text) = pages Then\r\n      \r\n      ie.navigate anchor.href\r\n      \r\n      Call ieWait(ie)\r\n\r\n      If InStr(ie.document.body.innerText, Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(r, 1).Text) &lt;&gt; 0 Then\r\n      \r\n        Sheets(\"\u691c\u7d22\u9806\u4f4d\").Cells(r, c) = pages\r\n        \r\n        DoEvents\r\n        Sleep Int((3000 - 1000 + 1) * Rnd + 1000)\r\n        \r\n        Exit Sub\r\n        \r\n      Else\r\n        \r\n        ie.navigate \"JavaScript:scrollTo(0,\" &amp; ie.document.body.ScrollHeight &amp; \")\"\r\n      \r\n      End If\r\n\r\n      Exit For\r\n    \r\n    End If\r\n  \r\n  Next anchor\r\n    \r\nNext pages\r\n\r\nDoEvents\r\nSleep Int((3000 - 1000 + 1) * Rnd + 1000)\r\n        \r\nEnd Sub\r\n\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u7279\u5b9a\u306e\u30ef\u30fc\u30c9\u3067\u30c9\u30e1\u30a4\u30f3\u304c\u4f55\u756a\u76ee\u306e\u30da\u30fc\u30b8\u306b\u3044\u308b\u304b\u3092\u77e5\u308a\u305f\u3044\u3068\u304d\u306b\u3002 A\u5217\u306b\u30c9\u30e1\u30a4\u30f3\u540d\u3001B\u5217\u306b\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u5165\u308c\u3066\u4f7f\u3046\u3002 &#8216;\u53c2\u7167\u8a2d\u5b9a &#8216;Microsoft HTML Object Library &#8216;Microsoft Inte &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/appbay.org\/?p=29\" class=\"more-link\"><span class=\"screen-reader-text\">&#8220;VBA IE\u3092\u8d77\u52d5\u3057\u3066\u691c\u7d22\u9806\u4f4d\u3092\u8abf\u3079\u308b&#8221; \u306e<\/span>\u7d9a\u304d\u3092\u8aad\u3080<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[5],"class_list":["post-29","post","type-post","status-publish","format-standard","hentry","category-1","tag-vba"],"_links":{"self":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=29"}],"version-history":[{"count":2,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions"}],"predecessor-version":[{"id":31,"href":"https:\/\/appbay.org\/index.php?rest_route=\/wp\/v2\/posts\/29\/revisions\/31"}],"wp:attachment":[{"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=29"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=29"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/appbay.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}