例如我用vba打开百度学术网页,当正常打开网页后,我只能看最上面的一页,但是我想用pagedown下翻打开的页面,查询可以用sendkeys“{PGDN}”来实现,但是尝试了n种组合,都没有效果。所有代码可以正常运行,但翻页效果不能实现,需要手动按键盘page down才可以。大家帮帮忙,谢谢。
看看是否没有先让浏览器获得焦点,要让浏览器窗口在最前面获得焦点再sendkeys
您好,使用SendKeys发送“{PGDN}”可能无法在网页中产生预期的效果。相反,您可以使用WebBrowser控件中的Document对象来模拟按下PageDown键。
以下是示例代码,它使用WebBrowser控件打开百度学术网页并模拟按下PageDown键:
Sub ScrollPageDown()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.navigate "https://xueshu.baidu.com/"
Do While ie.Busy Or Not ie.ReadyState = 4
DoEvents
Loop
Dim doc As Object
Set doc = ie.Document
doc.parentWindow.ScrollBy 0, 99999 '向下滚动
End Sub
此代码使用InternetExplorer对象打开百度学术网页,并使用Document对象的parentWindow属性滚动页面。ScrollBy方法接受两个参数,它们是水平和垂直滚动的像素数。在此示例中,我们向下滚动了99999像素,以模拟PageDown键的效果。