繁体   English   中英

vba跳过网页中的弹出消息框

[英]vba skip popup message box in webpage

我是初学者,正在拼命寻求帮助。 我恳请您的支持,并为措辞不当和最终缺乏信息提前道歉(再次,我是菜鸟)。 我正在构建一个 Excel 宏来填写(私人)网页,并在填写请求的数据后,我还可以调用提交数据/表单的 javascript 函数。 但是,它出现了我无法确认的“来自网页的消息”(总是“确定”/输入)或简单跳过。 宏只是停止,如果不手动单击“确定”按钮,我将无法执行任何操作。 我花了几个小时搜索并尝试不同的解决方案,但似乎没有任何效果,可能是因为我的技能很差。 下面我发送让我难以忍受的代码(希望就足够了)。 期待您的帮助

我的代码

DIM HTMLdoc As MSHTML.HTMLDocument

' Submits data but gets stuck in the popup message box
HTMLdoc.all.Item
Call HTMLdoc.parentWindow.execScript("licitarLeilao();", "JScript")

网页

...
function licitarLeilao(){
    var ultimaLicitacao = document.getElementById('ultimaLicitacao').value;
    var valorLicitar = document.getElementById('valorLicitar').value;

    if(ultimaLicitacao == ' -- '){
        ultimaLicitacao = document.getElementById('valorBase').value;
    }

    var racio = toNum(valorLicitar) / toNum(ultimaLicitacao);

    if (racio < 1.5) {
        if(!confirm('Confirma o valor de licitação (' + valorLicitar +' eur.) do leilão?')){
            return false;
        }   
    }
    else {  
        if(!confirm('ATENÇÃO!! O valor de licitação é muito superior à última licitação. \n\n Confirma o valor de licitação (' + valorLicitar +' eur.) do leilão?')){
            return false;
        }
    }   

    var flow = document.getElementById('flow');
    flow.value = '8';

    document.formulario.submit();
}

您可以尝试使用不同的功能覆盖window.confirm

With HTMLdoc.parentWindow
    .execScript "window.confirm = function(){return true;};", "JScript"
    .execScript "licitarLeilao();", "JScript"
End With

在对我来说工作正常的测试页面中。

注意:如果网页上有任何其他代码使用confirm则该代码的功能可能会受到影响。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM