三流君 ken3のmemo置き場

メモ置き場、保管庫として利用。まとまっていませんがヨロシク

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマー Ken3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 現在は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。
(※詳細は[三流君 三流プログラマーとは?]を見てください)


広告:


ページを表示させ、指定位置にスクロールさせるテスト

テストページ
http://oct2011.s2008day.com/test.html
を表示後、
文字列を置き換え、Div id=xxxxのタグを追加する。
id=xxxxの.offsetTopを取得してから、
JavaScriptscrollToでスクロールさせる
そんなテスト動画です。


ソースコード

Option Explicit

'ページを表示させ、指定位置にスクロールさせるテスト
'strBODY = objIE.Document.body.InnerHTML で変数に入れて
'Replaceで div id=xxxx を追加
'id=xxxx の.offsetTop を取得後、scrollToでスクロールさせる

Sub ie_scroll_test_1017()

'IEの起動
    Dim objIE As Object '変数を定義します。
    Set objIE = CreateObject("InternetExplorer.Application") 'オブジェクトを作成します。
    objIE.Visible = True      '可視、Trueで見えるようにします。
    
'処理したいページを表示します。
    objIE.Navigate "http://oct2011.s2008day.com/test.html"

'ページの表示完了を待ちます。
    While objIE.ReadyState <> 4 Or objIE.Busy = True '.ReadyState <> 4の間まわる。
        DoEvents  '重いので嫌いな人居るけど。
    Wend
    
'ページのスクロールテスト
    'BodyのHTMLを書き換える 自分で決めたid を <divでまず追加する
    Dim strBODY As String
    strBODY = objIE.Document.body.InnerHTML '変数に代入
    strBODY = Replace(strBODY, "秦佐和子", "<div id=hata>秦佐和子</div>")  '秦にid=hataを付ける
    objIE.Document.body.InnerHTML = strBODY  'データをセットする
    DoEvents
    '↑Body全体を読み込んで、一部を書き換え、また全体に代入しただけです・・・
    
    '次に、追加したidに対して処理を行う(a アンカーのほうがよかったかもと思いつつ)
    '(表示位置を調整する)
    Dim y As Long
    Debug.Print objIE.Document.getElementById("hata").offsetTop
    y = objIE.Document.getElementById("hata").offsetTop  'スクロール位置を保存する
    'javascriptのscrollToを呼ぶ(※IEのWindowの指定がわからなかったので、苦肉の策)
    objIE.Document.Script.setTimeout "javascript:scrollTo(0," & y & ");", 1000
    '↑こんな感じでJavaScriptを混ぜることができるので、
    'VBAの処理に困ったら、javascript側から攻めてみては・・・・

End Sub

テスト結果と簡単な解説動画

三流君 IE操作 VBA DIVタグを追加して、.offsetTop分scrollToでスクロール - YouTube
www.youtube.com

Ken3 ホームページ 目次

分類:HPを大きく分けると4つの柱(分類)です。
・[Excel/Access VBA]の解説
・[ASP(Active Server Pages)]の解説。
・[元コンビニ店長時代の話]が弟に巻き込まれ、失敗した脱サラ、畑違い?の仕事で失敗。
・[プログラマーの愚痴]では、あまり見せたくない三流プログラマーの内面かな。
三流君を踏み台にする
主に上記4つの分類でHP作成やメルマガの発行を行ってます。
※更新頻度が落ちていて情報の鮮度が悪いです。

三流解説動画の再生リスト
https://www.youtube.com/user/ken3video/playlists

本当に三流なんです(笑):たまにスゴイですねなんて言われることもありますが、
真実は→ [三流君の真実は...] ←を初めに見てくださるとわかると思います。
(からくりは、成功例↑しか載せてなくて ヒドイ失敗例はお蔵入り迷宮入りが多かったりします)