Html 如何使用Excel VBA在Web窗体上显示灰色文本字段?

Html 如何使用Excel VBA在Web窗体上显示灰色文本字段?,html,excel,vba,internet-explorer,Html,Excel,Vba,Internet Explorer,我正在用Excel VBA填充Internet Explorer web表单。我能够获得所有信息,以成功地进入表格。但是,表单上的某些字段仍保持灰色,即使它们的字段中已经填充了数据,也无法对其进行编辑 以这张图片为例: 查看如何在字段中填充电话号码,但字段保持灰色?这就是问题所在。我正在寻找一种方法,以编程方式显示该字段,使其成为可编辑的 因此,我能够通过模拟用户通常会显示字段的方式单击一些下拉菜单来解决一些字段的问题。然而,这并不适用于这个领域以及其他一些领域 下面是我试图用Excel VB

我正在用Excel VBA填充Internet Explorer web表单。我能够获得所有信息,以成功地进入表格。但是,表单上的某些字段仍保持灰色,即使它们的字段中已经填充了数据,也无法对其进行编辑

以这张图片为例:

查看如何在字段中填充电话号码,但字段保持灰色?这就是问题所在。我正在寻找一种方法,以编程方式显示该字段,使其成为可编辑的

因此,我能够通过模拟用户通常会显示字段的方式单击一些下拉菜单来解决一些字段的问题。然而,这并不适用于这个领域以及其他一些领域

下面是我试图用Excel VBA以编程方式显示的字段的HTML

<td colspan="1" rowspan="1" align="left">
<input type="hidden" name="p_arg_names" value="97183355576083984700">
<input type="text" id="P1_REPORTED_BY_CONTACT" name="p_t20" value="" size="50" maxlength="255" class="text_field apex_disabled" disabled=""></td>
“联系人信息”字段应如下所示。该字段将变为白色,然后可编辑


如果您能给我任何建议,我将不胜感激。或者,如果你知道答案在哪里,请告诉我正确的方向,我会记下这个。经过几天的研究,我找不到这个问题的答案。

答案由@PEH在评论中提供。谢谢你,佩

回答:
doc.getElementById(“P1\U报告的\U联系人”).disabled=False

简单,但有效

使用

doc.getElementById("P1_REPORTED_BY_CONTACT").Disabled = False
并将
class=“text\u field apex\u disabled”
更改为
class=“text\u field”

doc.getElementById("P1_REPORTED_BY_CONTACT").className = "text_field"

把它变成白色。如果不起作用,请检查已启用字段的
,并将此字段设置为同一类。

是否尝试
doc.getElementById(“P1\u报告的联系人”)。在填充之前禁用=False
?我没有。我现在就试试!尝试聚焦文本框,然后尝试使用sendkeys输入值。检查是否启用复选框。Application.SendKeys(“(12345)”),TrueOkay,这使得它可以编辑,这是很重要的。非常感谢。唯一奇怪的是磁场没有从灰色变为白色。关于如何更新它有什么想法吗?请看我的答案,删除灰色。难以置信!“doc.getElementById(“P1\u REPORTED\u BY\u CONTACT”).className=“text\u field”的建议也起了作用。您就是@PEH的人,再次感谢!
doc.getElementById("P1_REPORTED_BY_CONTACT").className = "text_field"