【问题标题】:How To Insert Value In textarea using Excel VBA如何使用 Excel VBA 在文本区域中插入值
【发布时间】:2020-12-10 14:58:39
【问题描述】:

我正在尝试使用 Excel 自动化在 textarea 字段中插入值,我做了很多研究但没有成功。

我使用了下面的脚本。

IE.document.all("content").Item.Value = "Hi"
IE.document.all("content").Value = "Hi"
IE.document.all("content").innerHtml = "Hi"

这些例子都不起作用。

【问题讨论】:

  • .innertext ?我去看看
  • 你为什么使用document.all?这已被弃用,可能无法在网站上使用。另外,您的选择器"content" 是类名吗?如果是这样,您可能正在寻找类似IE.document.querySelector(".content").innerHTML = "Hi" 的东西。添加您的 HTML 以获得更好的参考。
  • 能否提供相关的html代码,以便我们测试一下如何定位元素?此外,我同意 Robert,你应该使用其他 css 选择器而不是 document.all,它是 deprecated
  • 听起来不错,我会把评论放到答案中,这样这个问题就可以解决了。

标签: excel vba internet-explorer


【解决方案1】:

不要使用 Document.all

根据mozilladocument.all 自 HTML5 以来已被弃用,可能不适用于您的网站。

不再推荐使用此功能。尽管某些浏览器可能仍然支持它,但它可能已经从相关的 Web 标准中删除,可能正在被删除,或者可能仅出于兼容性目的而保留。避免使用它,并尽可能更新现有代码;。 . .

您可以使用的选择器

确实,最好使用的选择器是.getElementById.getElementsByClassName.querySelector.querySelectorAll

使用正确选择器的解决方案

我更喜欢使用querySelectorquerySelectorAll

使用您的示例,您似乎正试图获取具有一类内容的唯一 textarea,例如 <textarea class="content"></textarea>

因此,该示例看起来像

IE.document.querySelector(".content").innerHTML = "Hi"

【讨论】:

  • 谢谢,它正在工作。这个类怎么点击> class="btn btn-success" 有二类怎么点击
  • 太好了,如果这回答了您的问题,请将其标记为已回答。您可能需要使用的不仅仅是该实例中的类,因为btn btn-sucess 可能是一些像引导程序这样的框架,其中类在所有地方都可以重用。话虽如此,如果这是唯一的元素,那么它将类似于document.querySelector(".btn.btn-success").Click
  • 这是一个基本的 css 选择器列表,可以从 W3Shools.com 帮助您。如果您有更多后续问题,那么最好在 SO 中提出这些新问题。干杯
【解决方案2】:

请尝试以下代码。检查它是否工作。 IE.document.all("content").Text="Hi"

或者 尝试在代码末尾添加文本属性

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-19
    相关资源
    最近更新 更多