从Excel中的文本框中获取值使用Excel VBA

从Excel中的文本框中获取值使用Excel VBA

问题描述:

我在Excel中遇到了一个宏问题,我想在javascript网页中返回“input type =”文本“”的值,但值isn' (value =“”)中指定,即使网页在文本框中显示文本(网页“打印”此文本框中的文本,但不是用户的输入),它也不会更改。从Excel中的文本框中获取值使用Excel VBA

Using "IE.Document.getElementById("lat_txt_velmaxima").Value", returns Null. 

页面上的代码是:

class="campo txt_velmaxima"> <label for="lat_txt_velmaxima">Velocidade máxima:</label> 

<input type="text" name="lat_txt_velmaxima" id="lat_txt_velmaxima" 
disabled="disabled" value="" readonly="readonly" /> 

如果我理解你的问题正确,你只需要抓住的是只读的文本输入的值。

如果是这样的话,通过JavaScript查询DOM API的正确方法如下:在document

document.getElementById('lat_txt_velmaxima').value; 

注意小写d,而在value小写诉

+0

HTML代码没有价值,我无法通过document.getElementById('lat_txt_velmaxima')获取它的值。我需要复制页面的直接值,因为我无法通过阅读HTML代码来获取值。 但是,谢谢你的答案。 注意:该代码适用于Excel中的VBA。 我试过的示例代码: Range(“P”&Counter).Value = IE.document.getElementsByTagName(“lat_txt_velmaxima”)] 范围(“P1”)。值= IE.document.getElementsByTagName(“lat_txt_velmaxima”) [范围(“P1”)。 Value = IE.document.getElementById(“lat_txt_velmaxima”)] –

+0

@CarlosGuardado:您在上面添加的HTML代码,其中没有输入值:您是从页面的源代码获取的,还是通过检查DOM与您的浏览器的开发人员工具?如果你从源头获得它,可能是前端动态添加了值,并且将在那里供您查询。如果你通过检查DOM来获得它,那么你真的没有什么价值可供查询。 “页面的直接价值”是DOM。 –

+0

是的,我已经从源代码中获得了它,并且它是动态添加的,在这种情况下,您能否提供可以执行此任务的示例代码,或者我要遵循的步骤? –