VBA使用Internet Exporer单击项目

时间:2018-08-09 00:03:47

标签: vba internet-explorer web screen-scraping

我的公司使用基于Web的报告系统,因此我试图将数据自动导出到Excel。有一个标准下拉菜单,其中包含“文件”>“导出到XLS”,我想自动单击“导出”按钮以下载报告。

我已经阅读了其他有关单击按钮以展开页面或在表单中输入值的文章,但可能是因为按钮在下拉菜单中,或者元素位于{{1 }}以前发布的解决方案都没有对我有用。

到目前为止:

  • 我可以导航到页面
  • 我可以得到iframe元素
  • menuExportXLS打印正确的Debug.print
  • 我的代码没有引发任何错误

但是我无法成功单击该按钮来下载文件。

或者,HTML内有一个JavaScript innerText脚本可以触发下载,但是我不知道如何在VBA中调用它。我很乐意运行这两种方法。

Sample of HTML

onclick

1 个答案:

答案 0 :(得分:0)

您可以使用CSS选择器来定位元素;

export default {
    props: ['listType'],
    components: {
        addrow: AddRow
    },
    computed: {
        ...mapGetters({
            current: 'Dropdown/current'
        }), 

        ...mapState({
            list (state, getters) {
                return getters[`${this.listType}/list`]
            }
        })
    }
}

这是一个属性=值选择器,定位到内容文档中具有appIE.document.getElementsByTagName("iframe")(0).contentDocument.querySelector("[onclick*='exportXLS']").Click 属性且包含值onclick的第一个元素。