会社のドキュメントのデーターベースサイトを閲覧するとき、
量が膨大な為、Ctrl+Fで検索をしていました。
今回、その操作を盛り込んだマクロを作ろうとしていますが、
検索サイトで調べてみても中々ヒットしません。
Excelは2003SP3を使っています。
具体的には、
(1)別のデーターベースからC6のセルにドキュメントの番号を出力
(2)(1)の番号から該当するデーターベースのアドレスを生成
(3)(2)で生成したアドレス先のサイトを開く
以上の(1)~(3)は何とかできました。
問題は以下の(4)~(5)の工程です。
(4)開いたサイト内でCtrl+F
(5)C6のドキュメントの番号を「検索する文字列(N)」の欄に入力
(6)「次を検索(F)」を1回だけクリック
お知恵を貸していただけると大変助かります。
よろしくお願いいたします。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
≫No.4 この回答への補足
><td nowrap width="200px">111-222-333-444-abcde</a></td>←ドキュメントナンバーを含む文字列
この行の記述は間違ってないですか?
取りあえずtrタグで探るなら下記のような感じでいけると思います。
探し出してあと何をするか解らないのでaタグのリンクを書き出しようにしています。
Dim tmp1 As Object
Dim tmp2 As Object
For Each tmp1 In .all.tags("tr")
If tmp1.all.tags("td")(0).innerText Like "111-222-333-444*" Then
For Each tmp2 In tmp1.all.tags("a")
Debug.Print tmp2.href
Next
Exit For
End If
Next
No.4
- 回答日時:
≫No.3 この回答への補足
参考になるかもしれないサンプルを示しただけです。
そのままでは上手くいかないのは当然だと思いませんか?
サンプルのような感じで何とかなりそうですか?
補足内容から推測すると方向は合っていると考えてよろしいですか?
方向は合っているなら、実状に合わせて書き換えて試してください。
ピンポイントでの回答には該当部のHTMLソースの提示が必要です。
個人情報等は伏せて提示することはできませんでしょうか。
この回答への補足
ご意見ありがとうございます。
No.3で頂いた回答に対してご報告する前に、
入力やクリックをどうすれば良いのか探してみましたが、
出来ませんでしたので結果のみをご報告いたしました。
該当部分のソースは以下の通りです。
<tr>
<td nowrap width="200px">111-222-333-444-abcde</a></td>←ドキュメントナンバーを含む文字列
<td nowrap width="400px">ドキュメントの名前</td>
<td><a href="リンク1"><img src="○○.gif" /></a></td>
<td><a href="リンク2"><img src="○○.gif" /></a></td>
<td><a href="リンク3"><img src="○○.gif" /></a></td>←リンク1~3の画像ファイルは同じもの
</tr>
これと同じソースが並んでおり、
その中の「111-222-333-444」を含むドキュメントナンバーを探したいと考えております。
宜しくお願いいたします。
No.3
- 回答日時:
Webサイトと勘違いしていました。
私は会社内のデータベースサイトなるものを扱ったことがないので良く解りません。
Webサイトと会社内のデータベースサイトは同じ構造と考えて良いのでしょうか?
意図する処と合致しているかどうか解りませんがWebサイトの例を挙げてみます。
JRAサイトマップのページ
http://www.jra.go.jp/sitemap/index.html
から「競馬メニュー」内のリンクを取ってみます。
HTMLソースをみると
Tableタグのsタブに見出しと見出し毎のリンクがあります。
Tableタグを総当たりして
最初のaタグで見出しの「競馬メニュー」を見つけ
「競馬メニュー」が見つかったTableタグ内のaタグを総当たりでリンクを書き出します。
(ただしonclickが有る場合はその部分が取れていません)
Dim tmp1 As Object
Dim tmp2 As Object
With objIE.document
For Each tmp1 In .all.tags("table") 'Tableタグを総当たり
If tmp1.all.tags("a")(0).innerText = "競馬メニュー" Then '競馬メニュー
For Each tmp2 In tmp1.all.tags("a") 'aタグを総当たり
Debug.Print tmp2.innerText & vbLf & tmp2.href
Next
Exit For
End If
Next
End With
この回答への補足
回答ありがとうございます。
リンクの部分は全て同じ画像ですので、
aタグで検索は出来ませんでした。
検索したい部分はリンクの張られていないテキスト部分です。
また説明不足だったようで申し訳ありません。
下の補足を引用しますと、
111-222-333-444 [リンク1] [リンク2] [リンク3]
のリンク部分は全て画像が張られています。
テキスト部分の「111-222-333-444」
で検索したいと考えております。
No.2
- 回答日時:
>(4)開いたサイト内でCtrl+F
取りあえず(4)のみですが下記ページを参考に
「検索」ダイアログを出すことができました。
≪参考≫
IE 操作 .ExecWB でコマンド実行(検索したかったけど)
http://www.ken3.org/vba/backno/vba112.html
上記ページでは
'IEのメニューコマンドを実行する(42番のコマンド)
objIE.ExecWB OLECMDID_SHOWFIND, OLECMDEXECOPT_DODEFAULT
で失敗となっていますが
32番目のコマンド
objIE.ExecWB OLECMDID_FIND, OLECMDEXECOPT_DODEFAULT
で成功しました。
IE7です。
#余談ですが
どういったニーズで「検索」ダイアログを表示されるのですか?
サイトのデータを「検索」ダイアログに頼らずに探ることは可能です。
この回答への補足
回答ありがとうございます。
家からではアクセスできないサイトですので週明けまで
試せないのが残念です。
もっと簡単な方法があるのであればうれしいです。
普段サイト内の検索をCtrl+Fで行っていますので、発想がありませんでした。
ニーズの補足をします。
欲しいドキュメントが「111-222-333-444」だったとします。
サイト内は「111-222-000-000」から[111-222-999-999」までリストになっています。
その番号の右にリンクが3つあり、それぞれに必要なドキュメントが保存されています。
構成のイメージは以下の感じです。
「111-222関連のページ」
111-222-000-000 [リンク1] [リンク2] [リンク3]
111-222-000-001 [リンク1] [リンク2] [リンク3]
・
・
・
111-222-999-999 [リンク1] [リンク2] [リンク3]
[TOP]
この中から「111-222-333-444」を探し出すのが今回の目標で今頑張っています。
回答ありがとうございます。
こちらのコードで「検索」ダイアログは表示できましたが、
文字列の入力、及び「次を検索」が出来ませんでした。
No.1
- 回答日時:
sub macro1()
application.dialogs(xldialogformulafind).show worksheets("シート名").range("C6").text
end sub
というマクロを実行することで,所定のセルの内容を検索する文字列欄に投入済みの検索ダイアログを表示し,そのまま検索できます。
これに加えて,例えばCtrl+Fのショートカットをこのマクロに取り付ける(ツールのマクロのマクロのオプション)などの手段を併用する事もできます(必要に応じて別途ご相談を投稿してください)が,専用の「検索ボタン」を用意してクリックしてダイアログを表示させるなどの手だての方がお薦めと感じます。
早速の回答ありがとうございます。
残念ながら上手く出来ませんでした。
調べてみましたが、教えていただいた内容ですと
Excel内の検索になるようです。(違ったらごめんなさい)
私が行いたいのは(3)で開いたサイト内の検索です。
引き続きよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あるあるbotに投稿したけど採用されなかったあるある募集
あるあるbotに投稿したけど採用されなかったあるあるをこちらに投稿してください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
[Ctrl]+FをVBAで表現
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IPATで馬券を的中させたのです...
-
サンプルサイズが異なるデータ...
-
4頭でワイド馬券を買う場合、組...
-
競馬に関しまして。私よく知ら...
-
【競馬場】競馬場の馬券購入時...
-
粗品さんがやっている競馬払い...
-
出銭はゲンが悪いといいますが
-
即PATを家族にばれないように。
-
競馬歴3か月で50万負けました。...
-
馬主席での観戦について
-
学生バイトについての質問です...
-
高校生の競馬についてです。そ...
-
競馬で個人的にすごく悔しい思...
-
ジョッキーの服はどのように決...
-
人に頼まれた馬券をインターネ...
-
競馬の予想するのが疲れてしょ...
-
ギャンブルを虫唾が走るほど嫌...
-
競馬で先週35万負けてしまいま...
-
発売開始時のオッズについて
-
サイン系読み?の梅沢保さんご...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
サンプルサイズが異なるデータ...
-
4頭でワイド馬券を買う場合、組...
-
【競馬場】競馬場の馬券購入時...
-
出銭はゲンが悪いといいますが
-
IPATで馬券を的中させたのです...
-
粗品さんがやっている競馬払い...
-
競馬に関しまして。私よく知ら...
-
競馬歴3か月で50万負けました。...
-
学生バイトについての質問です...
-
人に頼まれた馬券をインターネ...
-
競馬がどうしてスポーツ?
-
オイチョカブの数字、「4」の...
-
日本中央競馬会の職員について
-
高校生の競馬についてです。そ...
-
海外から馬券購入
-
海外からIPATで馬券を購入...
-
競馬 マジックペン マークシー...
-
単勝オッズから馬連オッズを求...
-
夕方に買える新聞。
-
馬券の裏に,「一枚分10円」と...
おすすめ情報