Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2165 / 13645 ツリー ←次へ | 前へ→

【69578】エクセルのwebクエリ、VBAに関しての質問です。ログインできずに困っていま... とむさん 11/8/4(木) 12:30 質問[未読]
【69591】Re:エクセルのwebクエリ、VBAに関しての質... かみちゃん 11/8/5(金) 5:34 発言[未読]
【69593】Re:エクセルのwebクエリ、VBAに関しての質... とむさん 11/8/5(金) 9:55 発言[未読]
【69594】Re:エクセルのwebクエリ、VBAに関しての質... とむさん 11/8/5(金) 10:04 発言[未読]

【69578】エクセルのwebクエリ、VBAに関しての質問...
質問  とむさん  - 11/8/4(木) 12:30 -

引用なし
パスワード
   エクセルのwebクエリ、VBAに関しての質問です。ログインできずに困っています。

エクセルのVBAを使用して、
インターネットエクスプローラーでyahooにログインし、
ヤフオク出品中のデータを取得するマクロを作ったのですが、
うまくいくPCとうまくいかないPCがあり困っています。

うまくいくほうではIEでログインすると、webクエリでもログインされています。
うまくいかないほうはIEでログインしていても、webクエリはログインされていません。
ログインされていないので、当然データを取得できません。

なぜこのような現象がおきるのでしょうか?
どのように解決すればいいのでしょうか?
ご存知の方がいましたら、わかりやすく教えてください。
お手数をお掛けしますが、当方初心者ですので、解りやすくお願い致します。

環境はどちらもIE8 win7 EXCEL2007です。

【69591】Re:エクセルのwebクエリ、VBAに関しての...
発言  かみちゃん E-MAIL  - 11/8/5(金) 5:34 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>なぜこのような現象がおきるのでしょうか?
> どのように解決すればいいのでしょうか?
> ご存知の方がいましたら、わかりやすく教えてください。

まず、うまくいかないコードを提示されてはいかがでしょうか?

【69593】Re:エクセルのwebクエリ、VBAに関しての...
発言  とむさん  - 11/8/5(金) 9:55 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>なぜこのような現象がおきるのでしょうか?
>> どのように解決すればいいのでしょうか?
>> ご存知の方がいましたら、わかりやすく教えてください。
>
>まず、うまくいかないコードを提示されてはいかがでしょうか?

失礼しました。

コードをコピペで張り付けたのですが、
「本文に禁止語句が含まれています。」
とのエラーメッセージが返ってきて、貼り付けることが出来なかったもので…


Sub 出品中商品一覧表()


'---------- 閲覧したいyahooIDとPASS
myID = Worksheets("出品中商品一覧表").Range("c3").Value
myPASS = Worksheets("出品中商品一覧表").Range("d3").Value

【69594】Re:エクセルのwebクエリ、VBAに関しての...
発言  とむさん  - 11/8/5(金) 10:04 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>なぜこのような現象がおきるのでしょうか?
>> どのように解決すればいいのでしょうか?
>> ご存知の方がいましたら、わかりやすく教えてください。
>
>まず、うまくいかないコードを提示されてはいかがでしょうか?

失礼しました。

コードをコピペで張り付けたのですが、
「本文に禁止語句が含まれています。」
とのエラーメッセージが返ってきて、貼り付けることが出来なかったもので…

原因がURLのスラッシュとわかったので、URLは全て書き直しました。
また、長くてごちゃごちゃしていたので、必要な部分をまとめています。
他ページからコピペをして、よくわかっていない部分もありますが、
これでお願いできないでしょうか?


Sub 出品中商品一覧表()


'---------- 閲覧したいyahooIDとPASS
myID = Worksheets("出品中商品一覧表").Range("c3").Value
myPASS = Worksheets("出品中商品一覧表").Range("d3").Value
myP = "ヤフーログインページのURL"
'---------- IEで通常使用するyahooIDとPASS
myID2 = Worksheets("出品中商品一覧表").Range("c4").Value
myPASS2 = Worksheets("出品中商品一覧表").Range("d4").Value


'---------- IEひらく
Set myIE = CreateObject("InternetExplorer.application")
'---------- まずログアウトする
myPAGE = "ログアウト出来るURL"
myIE.Navigate myPAGE
Do Until myIE.busy = False And myIE.readyState = 4: Loop '***待ち合わせ
'---------- ログインページへ
myPAGE = "ヤフーログインページのURL"
myIE.Navigate myPAGE
Do Until myIE.busy = False And myIE.readyState = 4: Loop '***待ち合わせ
'---------- ID PASSの入力
myIE.Document.getElementById("username").Value = myID
myIE.Document.getElementById("passwd").Value = myPASS
myIE.Document.getElementById("persistent").Checked = True
'---------- SUBMIT
myIE.Document.getElementsByName("login_form")(0).Submit
Do Until myIE.busy = False And myIE.readyState = 4: Loop '***待ち合わせ


'---------- データの読み込み
'出品中商品データ
  With Worksheets("出品中商品一覧表").QueryTables.Add(Connection:= _
    "URL;読み込みたいページのURL" _
    , Destination:=Range("b6"))
    .FillAdjacentFormulas = True
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlOverwriteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .WebSelectionType = xlSpecifiedTables
    .WebFormatting = xlWebFormattingNone
    .WebTables = "26"
    .WebPreFormattedTextToColumns = True
    .WebConsecutiveDelimitersAsOne = True
    .WebSingleBlockTextImport = False
    .WebDisableDateRecognition = False
    .WebDisableRedirections = False
    .Refresh BackgroundQuery:=False
    .Delete
  End With


'---------- まずログアウトする
myPAGE = "ログアウト出来るURL"
myIE.Navigate myPAGE
Do Until myIE.busy = False And myIE.readyState = 4: Loop '***待ち合わせ
'---------- ログインページへ
myPAGE = "ヤフーログインページのURL"
myIE.Navigate myPAGE
Do Until myIE.busy = False And myIE.readyState = 4: Loop '***待ち合わせ
'---------- ID PASSの入力
myIE.Document.getElementById("username").Value = myID2
myIE.Document.getElementById("passwd").Value = myPASS2
myIE.Document.getElementById("persistent").Checked = True
'---------- SUBMIT
myIE.Document.getElementsByName("login_form")(0).Submit
Do Until myIE.busy = False And myIE.readyState = 4: Loop '***待ち合わせ
Set myIE = Nothing
'----------


End Sub

2165 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free