一、基本情况
1、单位内部网络,无法让大家进入进行测试
2、需要操作的网页的URL是固定不变的,就是要对其进和某些数据的提取与赋值,或点击
3、每次操作后都要等待其数据的再次交换,等待网页再次完全打开才能进行下一步
4、需要重复的提取EXCELL表中的数据进行填写,并提交二、我的问题:
1、点击让他开始工作的按钮的语句应该怎么写?
Private Sub Command1_Click() 
      webbrowser1.navigat "148.36.1.10"
      commondialog1.showopen    ’这句写在这儿行不行?
  End Sub   
     还要加入别的语句吗?
2、Private  Sub  WebBrowser1_DocumentComplete(ByValpDisp  As  Object,  URL  As  Variant) 里面
     IF URL符合要求 then 
         打开EXCELL表 
         操作A
         等待网页刷新
        操作B
        等待网页刷新
        操作C
       等待网页刷新
     然后返回,再循环进行操作A
...................
我的问题是,操作ABC之间等待网页数据刷新的时候怎么写?操作C后也要等待网页数据刷新完才能进入下一个循环,这时候等待网页数据刷新的语句应该写在操作C后,还是写在操作A前?    

解决方案 »

  1.   

    Private  Sub  WebBrowser1_DocumentComplete(ByValpDisp  As  Object,  URL  As  Variant) 里面 
        IF URL符合要求 then 
            打开EXCELL表 
            操作A 
    exit sub
    ednif
        IF URL符合要求B then         操作B 
    exit sub
    end if
        IF URL符合要求C then 
            操作C 
    exit sub
    end if  
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) http://feiyun0112.cnblogs.com/
      

  2.   

    操作A就是点击某按钮,打个比方,你回复贴子后,网页会刷新,但URL不会变哦
      

  3.   

    判断操作前后的WebBrowser1。Documnet。Body。InnerHtml
      

  4.   

     用类似这个的??   If  InStr(doc.body.innerText,  "寻找一个新的用户名")  >  0  Then 
      

  5.   

    因为一般数据变动都在最后一层的FRAMS里,前面有三个FRAMESET,那么
    If  InStr(doc.body.innerText,  "寻找一个新的用户名")  >  0  Then 
    这里面的doc.body.innerText是改还是不改?要是改,是改成什么样的?
    doc.frames(0).frames(2).frames(0).froms(0).body.innertext 这样行不行???
      

  6.   

    现在的问题:
    第一:对于WebBrowser1.document.  如果WEBBROWSER是单框架结构的,现在会写判断和操作的句子了,但在对于复杂框架结构的(FRAMSET下面还套着几回FRAMSET的,我就不会写了,调试了几次,都未能成功,高手们来指点下!!
    例如:FRAMSET(第二个)下面----FRAMESET(第一个)----FRAME(第三个)----下面的FORM(0)[第一个,就这个我会,呵呵],怎么写操作这个FORM下面的元素的命令?
    doc.frames(1).frames(0).froms(0).all(i).click
    可否?第二,进入我这个URL相同的页面中,未赋值提取数据前(设为A状态),和赋值提交服务器提取数据后(设为B状态),[采用6楼feiyun0112建议],对比二状态的源码,发现除了我看不懂的一些估计是保密的十进制的代码外,最大的差别是B状态比A状态多了一句value=123456(赋了值嘛),能否先用IF A.getelementbyid(aaaaaa).value=""来执行第一步操作,等其value="123456"则时行第二步操作??[因为A的源码没有VALUE的地方,我怕=""不行,是不是担心有点儿多余??]另,AB二状态还有一个小的差异:
    <TD id=Y5 align=middle><FONT id=X5 color=green></FONT></TD>
    <TD id=Y5 align=middle><FONT id=X5 color=red></FONT></TD>
    A状态为绿色,B状态为红色,能否也用这个判断?用这个应该怎么写语句?
    InStr(doc.body.innerHTML,"<TD id=Y5 align=middle><FONT id=X5 color=green></")>0
    可否??
      

  7.   

    连发三次,不能再发,换个马甲来
    为什么IF InStr(WebBrowser1.Documnet.getelementbyid("id").document.Body.InnerTXT,"ABC")>0 then
    这句老是提示不支持