Tag: vbscript

使用VBScript从Excel中提取数据

我有一个要求,从电子表格中提取旧数据,并加载/转换为CSV,DB。 虽然我知道这可以用Python和其他后端脚本来完成,但数据是非常关键的,并且要确保date格式化等没有任何损失。所以,决定在源代码中保留实现,并在vb脚本中涉及。 问题是,我试图从中提取表单有多个表。 例如: ColA ColB Col C ColD Row1 Date Group1 Group2 Group 3 Row2 Jan-13 25 26 27 Row3 Jan 18 35 29 19 Row4 20 15 <empty row> Y/Y % YTD % Group % 15 20 40 从上面的数据集中,我只需要从ColA中提取数据到Col(N),Col(N)是变化的,直到它到达空行。 提取整个电子表格非常简单。 Dim myExcel Set myExcel = CreateObject("Excel.Application") Dim myBook Set myBook = myExcel.Workbooks.Open(src_file) myBook.Sheets(WScript.Arguments.Item(0)).Select […]

从vbs启动excel 2010 worbook时,workbook_open不起作用

我正在使用Excel 2010.我使用下面的代码从VBS(VB脚本)打开test.xls文件: Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open("E:\test\test.xls") objExcel.Application.Visible = True 工作簿test.xls打开罚款,但我放在Thisworkbook模块的workbook_openmacros: Private Sub Workbook_Open() MsgBox "Hello" End Sub 不运行。 它可以直接打开test.xls,但不能通过VB脚本。 我已经设置开发人员>macros安全>macros设置来启用所有的macros,但是这仍然没有帮助。 任何想法将不胜感激。 非常感谢

从不在源代码中的网页提取数据

我想在Excel中编写一个macros,从下面的网页中提取数据: http://www.richmond.com/data-center/salaries-virginia-state-employees-2013/?appSession=673718284851033&RecordID=101177&PageID=3&PrevPageID=2&cpipage=1&CPIsortType=&CPIorderBy=&cbCurrentRecordPosition=1 我遇到的问题是员工信息数据不在页面源代码中,所以当我使用下面的代码(其中NextPage设置为上述URL)时, responseText不包含我正在查找的数据。 With CreateObject("msxml2.xmlhttp") .Open "GET", NextPage, False .Send htm.body.innerHtml = .responseText End With 我可能是错的,但我相信数据包含在页面的DOM中。 有人可以帮助我了解如何使用VBScript显示(即在应用javascript修改后)下载此页面的内容?

在VBA中使用AutoIt库

我需要使用VBAmacros操作一些窗口,而且我看到AutoIt有很多function来帮助我。 然后我想导入或使用我的VBAmacros内的AutoIt API(库)。 可能吗? 注意:在我的项目中,我不得不使用VBAmacros来解决其他问题。

直到循环在VBScript中给出未知的运行时错误

我试图从一个networking驱动器上的.csv文件中的一些数据使用VBScript从一个不同的networking驱动器上启用macros的工作簿中的工作表,但我得到以下错误: “未知的运行时错误” 目标是将data工作簿中的data工作表中的所有数据复制到spreadsheet工作簿中的test1工作spreadsheet 。 这是我的代码: Set app1 = CreateObject("Excel.Application") Set wb1 = app1.WorkBooks.Open("Q:\sample_dir\spreadsheet.xlsm") Set ws1 = app1.ActiveWorkBook.WorkSheets("test1") Set app2 = CreateObject("Excel.Application") Set wb2 = app2.WorkBooks.Open("M:\sample_dir\data.csv") Set ws2 = app2.ActiveWorkBook.WorkSheets("data") i = 1 Do Until ws2.cells(i,1).value = "" 'Find how many rows there are i = i + 1 Loop For j = 1 to 5000 […]

Excel外部数据连接崩溃在其他用户

我有一个tool.xlsx文件,使用外部数据连接到Access数据库(都在networking驱动器上,对用户有适当的访问权限)。 我有一个vbscript(代码如下),刷新该工作簿中的所有连接。 当我运行这个脚本时,一切都像魅力一样,但是当一个同事运行这个脚本时,它不会抛出任何错误,但并不是所有的连接都被刷新。 有任何想法吗? Dim XLApp Dim XLWkb Set XLApp = CreateObject("Excel.Application") xlapp.visible = false xlapp.workbooks.open "\\networkpath\tool.xlsx" xlapp.displayalerts = false set wr = xlapp.workbooks.Open("\\networkpath\tool.xlsx") wr.refreshall xlapp.visible = false wr.Save wr.Close 这是来自tool.xlsx工作簿的连接string: Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=\\networkpath\db.accdb;Mode=Share Deny Write;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database […]

VBScript将只保存我的文件的副本

我写了一个小脚本,打开一个Excel工作簿,执行一个macros,然后保存工作簿。 唯一的问题是,macros执行后,保存提示问是否要保存我的文件的副本,而不是文件本身。 如果我点击原始文件并覆盖复制保存,提示会再次popup,并要求我保存副本,而不更改我的原始文件。 有谁知道如何解决这一问题?? Option Explicit Dim xlApp, xlBook set xlApp = CreateObject("Excel.Application") xlApp.DisplayAlerts = False set xlBook = xlApp.Workbooks.Open("C:\Users\HGAGNE\Desktop\Master.xlsm", 0, False) xlApp.Run "BatchProcessing" xlApp.DisplayAlerts = True Set xlBook = Nothing Set xlApp = Nothing

VBScript从其他工作簿searchExcel工作簿的值

我是VB脚本新手,请耐心等待! 我正在尝试创build一个使用两个不同的Excel工作簿的工作表的脚本。 它打开第一个工作表并遍历指定的范围。 我想要它然后采取该范围中的每个单元格的值,并search第二个工作表(在不同的工作簿中),并search在第一个工作表中find的值,如果find该值,返回的地址它被发现的单元格。例如: Worksheet1 ╔══════╦═════╗ ║ Name ║ Age ║ ╠══════╬═════╣ ║ Matt ║ 22 ║ ║ Jeff ║ 13 ║ ╚══════╩═════╝ Worksheet2 ╔═══════╦════════════╗ ║ Name ║ DOB ║ ╠═══════╬════════════╣ ║ Dave ║ 09/12/2001 ║ ║ Frank ║ 01/25/1992 ║ ║ Jeff ║ 10/10/2013 ║ ╚═══════╩════════════╝ 因此,该脚本将输出: A4因为它find了第二个工作表中第一个工作表的指定范围( A2:A3 )中的一个值,并且正在返回该单元格的位置。 这里是我有的代码: Set objExcel = […]

replace字符而不打开Excel文件

我有一个大的Excel文件(450MB +)。 我需要replace(,) – >(;或。)为我的一个fastload脚本工作。 我根本无法打开文件。 任何脚本实际上都会涉及打开文件,执行操作,保存和closures文件,依次。 将这样的VB脚本工作在这里的450MB +文件,其中文件不是只打开。 有没有任何VB脚本,壳牌脚本,Python,Java等我可以写实际执行replace(操作)而无需打开Excel文件? 或者,还有什么办法打开一个大的Excel文件,并执行该操作。

遍历列中的单元格,如果包含标准,则将行复制到新工作表

我有一个类似于以下的电子表格: 名称标题ID 人1标题1 1 人2标题2 11 人3标题3 111 人4标题4 1111 人5标题5 12 人6标题6 121 人7标题7 1211 人8标题8 1212 人9标题9 122 人10标题10 13 人11标题11 131 人12标题12 1311 人13标题13 1312 人14标题14 13121 人15标题15 1313 人16标题16 132 人17标题17 1321 人18标题18 14 人19标题19 15 人20标题20 151 人21标题21 1512 我想遍历“ID”列中的每个单元格。 如果该列包含值,则将整行复制到新工作表。 这是棘手的部分: – 第一个数字总是以1开始。 – 我想要脚本search“ID”1 +另一个数字(10,11,12,13 …)。 对于符合条件的所有单元格将该行复制到新工作表。 – […]