我收到了
在下面发布的代码中,在我的excel宏上'424运行时错误;对象需要'
。我试图将html用户表单的内容设置为我从文本文档中解析出来的字符串。
Set wb = WB1.document
Set wb.getElementById("booktitle").Value = book
我也试过了:
Set wb = WB1.document
With wb
.getElementById("booktitle").Value = book
End With
这是我的HTML:
<div class="section"><span>1</span>Book</div>
<div class="inner-wrap">
<label>Full Book Title <input id="booktitle" type="text" name="bookTitle" /></label>
WB1是我的用户形式webbrowser
答案 0 :(得分:0)
在处理属性时,您有几个选项。 .Value
是属性,但您使用的是Set
命令,该命令是为对象保留的。
您可以将对象设置为变量,例如:
Dim oBookTitle As Object
Set oBookTitle = wb.getElementById("booktitle")
oBookTitle.Value = book
getElementByID()
返回一个对象--- .Value
返回或设置对象的值 (它是一个属性)。
或者您可以直接使用该属性:
wb.getElementById("booktitle").Value = book
“是的,我将其更改为在我最初拥有您发布的内容的当天早些时候尝试设置,但无论是否设置都无效。” - bella98789
我在HTML代码中看不到“值”。您可以尝试.innerText
或.outerText
代替.Value
,看看是否能解决您的问题。
此外,如果您没有等待网页完全加载,那么您的对象将无法使用。添加此行以进行调试:
If wb.getElementById("booktitle") Is Nothing Then MsgBox "Obj not set"