初投稿になります
以前にも同じ質問のスレがありまして
そこを見てやってみたのですが
できなかったので新たに質問させていただきます
魔界の仮面弁士様が回答しておられました
ソースを載せさせていただきますが
Private Sub Command1_Click()
Dim Doc As Object 'MSHTML.HTMLDocument
Dim Body As Object 'MSHTML.HTMLBody
Dim objRange As Object 'MSHTML.IHTMLTxtRange
Dim BMK As String
'Dim L As Long
'検索文字列を入れておいてください。
If Len(Text1.Text) = 0 Then Exit Sub
Set Doc = WebBrowser1.Document
Set Body = Doc.Body
Set objRange = Body.createTextRange
'≫≫≫≫≫ 検索開始
'For L = 0 To 255
' If objRange.findText(Text1.Text) = False Then Exit For
Do While objRange.findText(Text1.Text)
'最初に見つかった位置を保存しておきます。
If Len(BMK) = 0 Then BMK = objRange.getBookmark
'検索した語句を黄色く反転させる。
objRange.execCommand "BackColor", False, "YELLOW"
'論理カーソル位置を、検索した語句の末尾に移動させる。
objRange.collapse False
Loop
'Next L
'≪≪≪≪≪ 検索終了
'ついでに、最初に見つけた語句の位置までスクロールさせています。
If Len(BMK) Then
objRange.moveToBookmark BMK
objRange.scrollIntoView
End If
'最後は一応、後始末を。
Set objRange = Nothing
Set Body = Nothing
Set Doc = Nothing
End Sub
このソースを使わせてもらったのですが
実行すると
objRange = Body.createTextRange
この行でエラーがおこり
公開メンバ 'createTextRange' は型 'HtmlElement' に見つかりませんでした。
となってしまいます
自分の力ではどうにもならないので
どなたかわかりましたら教えてください><
VB2005 / VB2008 で開発していたりはしませんか?
(そのコードは、VB6 用の物です)
ActiveX 版 WebBrowser では動作するかと思いますが、
.NET 2.0版 WebBrowser だと、幾らかの修正が必要になるでしょう。
まずは、お使いの開発環境を教えてください。
> 魔界の仮面弁士様が回答しておられました
> ソースを載せさせていただきますが
「引用」と「転載」の違いをどうこう言う気はありませんが、
こういう時には可能な限り、元記事の場所を明示した方が良いですよ。
>魔界の仮面弁士様
ご回答ありがとうございます
おっしゃるとおり私の環境がVB2005でした><
環境というのはVB2005ということだけで大丈夫ですか?
あまり詳しく分かりません^^;
元記事は
2004/08/18(水) 16:20:43 にともタソさんが投稿した記事ですm(_ _)m
ツイート | ![]() |