Tag: 互联网浏览器

Excel VBA IE自动化 – 粘贴链接到电子表格

我有VBA代码连接到IE浏览器,bbc.co.uk和search任何文本在单元格A1。 我希望将第一个search结果粘贴到电子表格的单元格A2中。 我想复制/粘贴的邮件是“简短的”。 我的代码如下 – 除了最后的部分外, Sub FillInBBCSearchForm() Dim ieApp As New SHDocVw.InternetExplorer Dim words As Range Set words = Range("A1") ieApp.Visible = True 'go to the website of interest ieApp.Navigate "http://www.bbc.co.uk/" Do While ieApp.Busy DoEvents Loop 'wait for page to finish loading Do While ieApp.Busy And Not ieApp.ReadyState = READYSTATE_COMPLETE DoEvents Loop '****fill in […]

是否可以在VBA中创build和使用Microsoft Edgevariables/对象?

我有一些VBA代码,从网上拉股价。 我的代码使用InternetExplorer对象/文档来执行此操作。 但是,如果可能,我想使用Microsoft Edge对象/文档。 在我目前的代码中: 我初始化一个InternetExplorervariables: Dim ie As InternetExplorer 然后我创build一个对象: Set ie = CreateObject("InternetExplorer.Application") 我想知道是否可以在我的代码中使用Microsoft Edge而不是Internet Explorer对象/文档。 先谢谢你。

如何从我的csv文件中删除BOM标题?

我想创build一个基于我的网页上的表格中显示的数据的CSV文件。 问题 每当我触发“save to csv”函数时,文件将在Excel中打开,但不会parsing出单个字段(使用逗号分隔符)。 一切都会出现在一列中。 它会适当地打破不同的路线。 经过多次testing/故障排除和从stackoverflow的帮助,结果是我真正的问题是BOM标题被添加,似乎是搞乱了。 当我在Notepad ++中打开csv文件并更改编码以删除BOM标题,然后在Excel中重新打开该文件时,它看起来很好。 码 这就是代码的样子:(注意:非IEpath工作得很好) function exportTableToCSV($tableName, fileName) { var csv = GetCellValues($tableName); console.log(csv); console.log("filename is:" + fileName); if (navigator.userAgent.search("Trident") >= 0) { //this is the path that is execute in IE10 browser… window.CsvExpFrame.document.open("text/html", "replace"); window.CsvExpFrame.document.write(csv); window.CsvExpFrame.document.close(); window.CsvExpFrame.focus(); window.CsvExpFrame.document.execCommand('SaveAs', true, fileName + ".csv"); } else { var uri […]

如何在IE中打开电子表格后停止Excel 2003挂起?

我有一个通过IE 7提供Excel文件的Web应用程序。它通过一个URL返回一个HTTP GET请求文件,该URL返回一个内容types为'application / vnd.ms-excel'的数据。 然后它在IFrame中打开电子表格。 这一切工作正常,除非电子表格下载时Excel已经打开。 在这种情况下,它仍然正确显示,但重新使用打开的Excel的实例。 IFrameclosures时,Excel挂起。 如果用户退出Web应用程序或者他们下载了不同types的文件,则Excel将仅被解锁。 我尝试打开“工具”下的“忽略其他应用程序”设置 选项| 一般,但没有解决问题。 我也试着按照这个答案中的步骤(因为链接的引用说'这个问题已经在Excel 2007 beta 2中解决了'),没有运气。 是否有某种“处理”步骤,我目前没有做,这将防止Excel挂? 版本: Excel 2003(11.8220.8221)SP3 IE 7.0.5730.11(更新版本:0)

我需要获取网页上的具体数据,并将其放在Excel中

我需要一个程序最有可能macros访问当前打开的网页,然后抓住一个特定的数据,然后将其粘贴到Excel文件。 我不能在Excel中使用networking查询,因为我需要访问的网站是密码保护。 我大约将每天从100个网页复制粘贴到2000个网页的数据。 示例数据显示在我需要从网页获取的位置如下所示: @Serial Code: 123345 ; @Database: DB001 ; @Title: Sample Tile 在Excel中应该是:| 12345 | DB001 | 样本标题 所以我需要的是1.转到网页2.运行macros获取数据3.转到下一个网页 我希望你可以帮助我

closures选项,从网站在Internet Explorer中打开xls文件?

背景: 我build立了一个客户端的Web应用程序,允许他们将Excel文件保存到服务器。 当我第一次构build应用程序时,我将这些文件存储在上传文件夹中,并直接从应用程序中的页面(例如文件)链接到它们。 经过反思,这不是很安全,所以我改变了上传文件,将文件存储在web根目录之上,从而阻止了直接访问。 我通过php“检索器”文件(例如文件)将文件传回给用户。 该文件(在一些用户身份validation检查后)如下所示: header("Content-type: application/octet-stream"); $_file = $_GET['filename']; $sPattern = '/\s*/m'; $sReplace = ''; $_strippedfile = preg_replace( $sPattern, $sReplace, $_file ); header("Content-Disposition: attachment; filename=".$_strippedfile.""); echo file_get_contents('/var/www/uploads/'.$_file); 问题: 除非用户select在Internet Explorer中“打开”而不是“保存”,否则上述所有工作都可以正常工作。 Excel试图打开文件并抛出'…找不到。 检查文件名称的拼写,并validation文件位置是否正确。 我google了这个错误,它似乎是做的文件的长度(包括path)。 不幸的是临时互联网文件的path不在我的控制之下,所以想知道是否有办法强制用户保存文件,而不是打开它? [显然这可以在本地进行configuration,但是a)我的客户不是非常技术性的,b)因为他们在公司networking上,所有的pipe理权限都被束缚住了。 任何其他的想法欢迎。

代码在F8阶段工作,但不正常运行时

Sub InternetPractice() Dim ie As InternetExplorer Set ie = New InternetExplorer ie.Visible = True ie.navigate "https://www.yahoo.com" Do While ie.Busy = True Or ie.readyState <> 4: DoEvents: Loop ie.document.getElementById("uh-search-box").Value = "Earth" ie.document.getElementById("uh-search-button").Click Do While ie.Busy = True Or ie.readyState <> 4: DoEvents: Loop ie.document.getElementById("logo").Click Set ie = Nothing End Sub 代码工作时,我一步一步地逐行,而不是正常运行时。 我曾尝试在某些部分插入45秒的时间,但没有成功。 正常运行时,代码在ie.document.getElementById("logo").Click中断ie.document.getElementById("logo").Click a a '424'对象需要错误

当button没有“名称”关联时,使用Excel VBA单击Internet Explorer中的button

我试图用Excel来自动化时间表中input的值。 时间表在网页上。 现在我可以加载页面,input我的用户名和密码,然后input时间表本身。 看下面的代码。 在这一点上,我需要点击一个button来打开子表单。 我不能预先知道有多less个子表格可以打开。 我知道如何点击一个button,当它有一个“名称”。 但在这种情况下,没有。 所以我下面更新的代码使用循环来打开其他每个子窗体。 这是第一次,但是当我再做一次 有人能告诉我如何确定页面中有多less个button,以及如何点击每个button? 在我将代码放置到现在和之后,我需要与之交互的页面的HTML代码。 Private Sub time_sheet_filling() Dim I As Long Dim IE As Object Dim doc As Object Dim objElement As Object Dim objCollection As Object ' Create InternetExplorer Object Set IE = CreateObject("InternetExplorer.Application") IE.Visible = True ' Send the form data To URL As POST […]

VBA IE Automation – 上传文件

我正在使用VBA自动化IE上传文件到网站。 我已经到了我已经find与“文件”types的button,但似乎在设置path时画空白。 我目前的VBA如下所示: Dim btnInput As Object ' MSHTML.HTMLInputElement Dim ElementCol As Object ' MSHTML.IHTMLElementCollection . . . Set ElementCol = appIE.Document.getElementsByTagName("input") For Each btnInput In ElementCol If btnInput.Type = "file" Then btnInput.Value = "C:\temp\text.csv" Exit For End If Next btnInput 和它正在阅读的HTML是这样的: <div id="upload-assignments-modal" class="modal hide fade in" tabindex="-1" role="dialog" aria-hidden="false" style="display: block;"> <div class="modal-header"> […]

Excel实例之间的参考工作簿

很长时间的用户,第一个问题。 所以我的企业用来获取煤船运动信息的一个网站最近被重新修改了,所以我不得不重新修改我的程序来删除船舶信息。 我一直使用button点击事件和使用导航到每个端口; Dim Table As Object, Set Table = ie.document.getElementsByTagName("TABLE")(11)来获取实际的表格。 在新的网站上,他们可以select导出所有的船舶动作,如果我可以自动化macros来获得excel文件,速度会更快。 澄清我只是想让我的程序去这个网站; https://qships.tmr.qld.gov.au/webx/ ,点击上面的“Ship Movements”,点击“Tools”,点击“Export to excel”,然后打开文件并返回到站点,然后点击“出生时的容器”,“工具”,“导出为ex​​cel”并打开该文件,然后使用类似的东西; Windows("Traffic.xls").Activate Application.ActiveProtectedViewWindow.Edit Sheets("Traffic").Select Application.DisplayAlerts = False Sheets("Traffic").Move After:=Workbooks("Search Ship Schedule.xlsm").Sheets(4) Application.DisplayAlerts = True 为了将工作表中的工作表返回到我的主工作簿,我将在那里search并获取我想要的工作表。 这是我所得到的结果。 Dim ws1, ws2 As Worksheet Set ws1 = ActiveSheet Set ws2 = ThisWorkbook.Sheets("Sheet1") ws2.Cells.ClearContents Dim Site, BtnPage(1 To 2), Btn As String […]