0

我已经编写了一个代码来在网页导航时拍摄屏幕截图并将其粘贴到 Word 文档中使用 VBA,我成功地做到了,但我得到的是上次而不是现在的屏幕截图。

例如,每当我按下 printscreen 时,它都会粘贴上次拍摄的屏幕截图,而不是现在的截图。我试着做延迟,把论点说成是真的,假的,没有任何效果。

这是我在 Class1 模块中尝试过的:

Option Explicit
Dim WithEvents ie As InternetExplorer
Dim wordapp As Object
Dim wrdDoc As Object
Dim t As Date
Sub Example()
Set wordapp = CreateObject("word.Application")

wordapp.Visible = True
Set wrdDoc = wordapp.Documents.Add
Set ie = New InternetExplorer
ie.navigate "http://www.csee.wvu.edu/~riggs/html/select_example.html"
Do Until ie.readyState = READYSTATE_COMPLETE: DoEvents: Loop
test
End Sub
Private Function href_onclick() As Boolean

Application.SendKeys "{44}"
wordapp.Selection.Paste
End Function

在一个模块中

Sub initialise()
Set ev = New Class1
ev.Example

End Sub
4

2 回答 2

1

尝试 Application.SendKeys "{44}", True

第二个参数告诉代码的执行等待动作完成

于 2012-11-01T17:03:33.123 回答
0

经过所有的努力,我想出了这个解决方案,我只是让粘贴选项等待 3 秒,直到图片被加载到剪贴板......:) 带有 true 选项的 sendkeys 根本不起作用。

于 2012-11-10T14:09:02.280 回答