0

ログイン後にアイコンリンクを自動クリックするvbaコードを書き込もうとしています。以下に書いたvbaコードに固執しており、vbaマクロを実行しても応答がありません。アイコン リンクは Web ページのフレーム内にあると思います。助けてくださいありがとう

アイコンのリンクを右クリックしてフレームの URL アドレスを確認し、ログイン後にその Web ページに移動しようとしましたが、不要な別のページに自動的にリダイレクトされます。

URLアドレス(アイコンリンクのある対象Webページ):「https://trading.poems.com.hk/poems2/poems.asp?func=view

自動リダイレクトされた Web ページ: " https://trading.poems.com.hk/poems2/loginaction.asp "

アイコン リンクの HTML コード:

<a href="#" onClick="StockPop = window.open ('http://www.poems.com.hk/stockSummary/stockSummary.asp?                                            iKey=2755766c747a25535353574373b375a375c05','StockAnalytics','scrollbars=yes,resizable=yes,status=yes,left=0,top=0,width=1250,height=700,toolbar=0')"><img src="images/Corner/EN/Company.png" border=0 title="Stock Analytics "></a>

私のVBAコード:

Sub open3()
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.navigate "https://trading.poems.com.hk/poems2/poems.asp?func=view"


Do Until ie.readyState = 4
DoEvents
Loop


For Each ele In ie.document.getElementsByTagName("a")
If InStr(ele.innerHTML, "images/Corner/EN/Company.png") > 0 Then
ele.Click


Exit For
End If
Next

End Sub

ウェブページのフレーム:

<html>
<head>
 <title>Phillip Securities (HK)-?????? (?????????)</title>
 <link rel="shortcut icon" href="images/phillip.ico">
   <meta http-equiv="Content-Type" content="text/html; charset=big5"></head>

     <frameset cols="*, 100%" border=0 frameborder=0 framespacing=0 marginheight=0 marginwidth=0>
<frame src="Poems2/BrowserChecking.asp" name="ChkBrowser">
<frame src="Poems2/Poems.asp" name="login" frameborder=0 framespacing=0 marginheight=0   marginwidth=0>
      </frameset><noframes></noframes>
     </html>

HTML ソース コードの一部:

  <!DOCTYPE html PUBLIC "-/W3C//DTD XHTML 1.0 Transtitional//EN"
 http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5" />
   <title>??????-?????????</title>
    </head>
     <link href="css/phillip.css" rel="stylesheet" type="text/css" />
      <script type="text/javascript" >document.domain="poems.com.hk"</script>
    <script type="text/javascript" src="js/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="css/ddsmoothmenu_Execution_EN.css" />
<script type='text/javascript' src='js/ddsmoothmenu.js'></script>
<script type="text/javascript" src="js/font.js"></script>
<script type="text/javascript">
ddsmoothmenu.init({

mainmenuid: "smoothmenu1", //menu DIV id
orientation: 'h', //Horizontal or vertical menu: Set to "h" or "v"
classname: 'ddsmoothmenu', //class added to menu's outer DIV
//customtheme: ["#1c5a80", "#18374a"],
contentsource: "markup" //"markup" or ["container_id", "path_to_menu_file"]
})


</script>
<script type="text/javascript">
var myclose = false;

function ConfirmClose()
{
    frameURL = (parent.DetailFrame.location.href).toUpperCase()
    //alert(frameURL + "////   " + frameURL.indexOf("PPSHK.COM"))
    if (frameURL.indexOf("PPSHK") > 0)
    {

        if (event.clientY < 0)
        {
            event.returnValue = '???????????, ?????????\n????!';
            //setTimeout('myclose=false',10000);
            //myclose=true;
        }
    }
}

function parentExists() {
    return (parent.location == window.location) ? false : true;
}

if(!parentExists())
    document.location = "../index2.htm"



function checkKeyCode(evt)
{
    var evt = (evt) ? evt : ((event) ? event : null);
    var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
    if(event.keyCode==116)
    {
        location.reload(true);
        return false
    }
}
document.onkeydown=checkKeyCode;
</script>
<body onUnload="CloseAllPop()">
<script>
    var EFuturePop
    var StockPop
    var USStockPop
    var SGStockPop
    var JPStockPop
    var SAStockPop
    var SOptionPop
    var SNOptionPop
    var StockGTCPop
    var BullionPop
    var FxBannerPop

    var FoFuturePop
    var ForexPop
    var FoOptionsPop

    var ForexResponse
    var FoFutureResponse
    var FoOptionsResponse

    function CloseAllPop(){
        if(EFuturePop != null){
            EFuturePop.close()
        }
        if(StockPop != null){
            StockPop.close()
        }
        if(USStockPop != null){
            USStockPop.close()
        }
        if(SGStockPop != null){
            SGStockPop.close()
        }
        if(JPStockPop != null){
            JPStockPop.close()
        }
        if(SAStockPop != null){
            SAStockPop.close()
        }
        if(SOptionPop != null){
            SOptionPop.close()
        }
        if(SNOptionPop != null){
            SNOptionPop.close()
        }
        if(StockGTCPop != null){
            StockGTCPop.close()
        }
        if(BullionPop != null){
            BullionPop.close()
        }
//      if(FxBannerPop != null){
//          FxBannerPop.close()
//      }
        if(FoFuturePop != null){
            FoFuturePop.close()
        }
        if(ForexPop != null){
            ForexPop.close()
        }
        if (FoOptionsPop != null) {
            FoOptionsPop.close()
        }
    }

    function forexClose(ans){
        ForexResponse = ans;
    }

    function foFutureClose(ans){
        FoFutureResponse = ans;
    }

    function foOptionsClose(ans) {
        FoOptionsResponse = ans;
    }

    function DisclaimerClose(type,ans){
        if (type == "Forex"){
            ForexResponse = ans;
        }
        else if (type == "FoFuture"){
            FoFutureResponse = ans;
        }
        else if (type == "FoOptions") {
            FoOptionsResponse = ans;
        }
    }

    function changeDetailFrame(link) {
        $('#DetailFrame').attr('src',link);
    }

    function CheckStockGTCPop(){
        if(StockGTCPop != null){
            parent.DetailFrame.location.href = "NoPopup/ZH/TradeStock_GTC.asp"
        }
        else{
            StockGTCPop = window.open('StockDisclaimer_GTC.asp','HKStockGTC','scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
        }
    }

    function CheckForexPop(){
        if (ForexResponse=="A"){
            if (ForexPop.closed) {
                ForexPop = window.open('Forex/asp/menu/100kforex_fr.asp','Forex','scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
            }
        }
        else{
            ForexPop = window.open('ForexDisclaimer.asp','Forex','scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
        }
    }

    function CheckFoFuturePop(){
        if (FoFutureResponse=="A"){
            if (FoFuturePop.closed){
                FoFuturePop = window.open('FoFutures/EN/ftslingshot2b3/LiveMain_fr.asp?type=F', 'FoFuture', 'scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
            }
        }
        else{
            FoFuturePop = window.open('FoFutureDisclaimer.asp','FoFuture','scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
        }
    }

    function CheckFoOptionsPop() {
        if (FoOptionsResponse == "A") {
            if (FoOptionsPop.closed) {
                FoOptionsPop = window.open('FoFutures/EN/ftslingshot2b3/LiveMain_fr.asp?type=O', 'FoFuture', 'scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
            }
        }
        else {
            FoOptionsPop = window.open('FoOptionsDisclaimer.asp','FoOptions', 'scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
        }
    }

//  function CheckFoFuturePop_FO(){
//      FoFuturePop = window.open('FoFutures/EN/ftslingshot2b3/LiveMain_fr_FO.asp','FoFuture','scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=1014,height=710,toolbar=0')
//  }

    function CheckFxBannerPop(){
        if(FxBannerPop != null){
            parent.DetailFrame.location.href = "Forex/asp/menu/100kforex_fr.asp"
        }
        else{
            parent.DetailFrame.location.href = "Forex/asp/menu/100kforex_fr.asp"
            FxBannerPop = window.open('Banner.htm','FxBanner','scrollbars=yes,resizable=yes,status=no,left=0,top=0,width=600,height=300,toolbar=0')
        }
    }
    //document.body.onunload = CloseAllPop
</script>
<table width="985" border="0" align="center" cellpadding="0" cellspacing="0" id="maintable">
  <tr>
    <td width="10" background="images/bgsquareleft.jpg"></td>
    <td bgcolor="#FFFFFF"><table width="940" border="0" align="center" cellpadding="0" cellspacing="0">
      <tr>
        <td colspan="2">
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
                <tr><td>
                    <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                        <td height="64"><a href="MainMenu.asp" target="DetailFrame"><img src="POEMSBanner.gif" alt="Phillip's ON-LINE ELECTRONIC MART SYSTEM" height="54"  border="0" /></a></td>
                        <td align="right" valign="bottom" class="style3">

            <a href="#" onClick="TradCenPop = window.open('https://trading.poems.com.hk/Poems2/tradingcentral/index.aspx?pf=X&lang=en&id=XXXXXX','TradingCentral','scrollbars=yes,resizable=yes,status=yes,left=0,top=0,width=680,height=480,toolbar=0')"><img src="images/Corner/EN/tradingcen.png" border=0 title="Trading Central"></a>
                            <a href="#" onClick="StockPop = window.open('http://www.poems.com.hk/stockSummary/stockSummary.asp?iKey=2755766c747a4373b375a375c05','StockAnalytics','scrollbars=yes,resizable=yes,status=yes,left=0,top=0,width=1250,height=700,toolbar=0')"><img src="images/Corner/EN/Company.png" border=0 title="Stock Analytics "></a>&>
4

1 に答える 1

0

あなたの URL " https://trading.poems.com.hk/poems2/poems.asp?func=view " は、タグが 1 つもないフレームセット ページの HTML コードを返します。

Browser オブジェクト内の Document 要素は、基になるページを展開しないことに注意してください。ここでは、「ソースの表示」機能を使用してブラウザで表示するのと同じように表示されます

フレーム化されたページ (の 1 つ) を直接呼び出す可能性を確認します

于 2013-05-16T07:17:36.763 に答える