Tag: 自动化

VB.NET GetObject(,“Excel.Application”)无法运行Excel

我有一个单一的,可见的,正在运行的Excel 2013实例。我已经执行了快速修复和在线修复,并等待修复完成。 如果我从Word运行这个VBA,我可以得到一个对正在运行的Excel应用程序的引用: Sub WordMacro() 'This works Dim o As Object Set o = GetObject(, "Excel.Application") End Sub 但是,如果我从.NET 4.5下的Visual Studio 2013 Professional运行它,它会失败: Option Strict Off Module Module1 Sub Main() Dim o As Object 'Cannot create ActiveX component. o = GetObject(, "Excel.Application") 'But this does create a new, hidden instance o = CreateObject("Excel.Application") End Sub […]

如果没有安装AddIns,则无法访问Excel的Application.ComAddIns属性

为Windows脚本主机剪下的代码显示了当前安装到Excel中的COM-AddIns的数量。 除了没有安装COM-AddIns之外,它工作正常。 我相信它应该输出一个“0”,但是会引发一个exception(代码800A03EC)。 有谁知道为什么? test.vbs Set objExcel = CreateObject("Excel.Application") WScript.Echo objExcel.ComAddIns.Count

Excel 2010的自动化比以前慢了5倍

我们有几个程序通过com自动化生成excel文档,一些用VB6编写,一些用python编写。 无论使用哪种编程语言,这些程序的运行速度都要比旧的Excel版本低5倍。 对python版本进行性能分析显示,额外的运行时间主要用于低级别的comfunction(内置方法绑定和调用),所以每个com调用都会放慢速度。 任何提示,我们如何加快速度,也许在Excel 2010(安全?)设置? 谢谢,托马斯

运行filter后自动运行VBA代码

我写了一个代码,将员工和他们的资格分类。 为了淘汰不合格资质的员工,我对每个栏目都加了一个filter,标明他们的资格类别。 我写了我的VBA代码,以便重复的名称和资格是为了便于定位而隐形的。 但是,我无法让代码自动运行。 目前,我可以让代码运行的唯一方法是将其设置为 Private Sub Worksheet_Change(ByVal Target As Range),然后更改任意单元格的值。 我发现我认为是正确的解决scheme: http://www.ozgrid.com/forum/showthread.php?t=72860 但我无法理解它。 有没有办法运行这个代码,而不必select和取消selectfilter运行后的单元格?

如何自动执行excel报告定期的数据透视表将不会削减它的数据来自许多地方?

我有一个问题,我一直在运行,我无法在网上find答案。 请不要将此标记为意见文章,因为它100%不是。 我有一个相当复杂的Excel报告,我需要创build,然后自动化。 我的数据以CSV,制表符分隔,json和.xls的forms放在一个ftp站点上。 我也有我需要引入的SQL Server数据。 一旦我获得了数据,我必须把它组织起来,并对其进行度量(这意味着它不像拖放到一个excel文件中那么简单)。 目前我一直在使用VBA将其大部分导入到MS Access中,然后执行复杂的查询来获取大部分我想要的数据,然后我将它移植到excel中,通过链接excel中的查询并通过调用文件并指定一个macros来更新并从计划任务的Access / Excel中导入。 这不仅是马虎,它也感觉不专业,并像它可以在任何时候炸毁我。 有没有更好/更清洁/更直接/更清晰/更安全的方法来做到这一点? 我知道ac#console应用程序的想法,但我无法find任何好的教程来获得足够的成就。 将所有数据本地化到一台服务器中是不可能的,除非我编写脚本来从FTP站点执行 我知道很多程序员都是反Access,反VBA的。 有些人有好点,其他人只是巨魔。 请发表你的经验,自动化excel报告为2016年的一个很好的解决scheme 。 所有的文件都是从2007年开始的,而现代的答案是没有地方可以find的,或者人们试图声称购买他们的图书馆/插件是唯一的解决scheme(这些人让我生病,试图推动蹩脚的代码在你的喉咙)。 我知道关于互操作,我知道openxml和IIS,但我没有在网上find很好的例子,如何做我的目标,我甚至不知道如果信息是最新的。 所以总而言之,你如何自动化一个需要比数据透视表更多的技巧的Excel报表,并且有数据来自许多来源? 还有没有人有一个很好的2016年的例子,还没有过时或XP上运行(XP是一个伟大的操作系统,但时间到了) 最好是C#,VBA,SQL将是尽可能less的外部库和插件使用的工具 谢谢 注意: 要求我们推荐或查找书籍,工具,软件库,教程或其他非本地资源的问题与Stack Overflow无关,因为它们倾向于吸引自以为是的答案和垃圾邮件。 – 我问的是专业人员如何在Excel上实现自动化,以及如何以程序的方式进行。 我不是要求书籍,图书馆,第三方工具或其他资源。 我正在寻求解决编码困境的方法,因为我一直在用100多行代码来旋转,并相信必须有一个更直接的方法。

VBAmacros循环显示特定列中的值

我是VBA的新手,我想在代码下面进行复制,以便自动化这个过程 =IF(A2="Male","M","F") 我已经编码如下所示,以显示'A'的第五列('F')偏移值 Sub Gender1() ' ' Gender1 Macro ' ' =IF(A2="Male","M","F") Dim rCell As Range Dim rRng As Range Set rRng = Range("A2", Range("A2").End(xlDown)) For Each rCell In rRng.Cells If rCell.Value = "Male" Then result = "M" rCell.Offset(0, 5).Select ActiveCell.Value = result ElseIf rCell.Value = "Female" Then result = "F" rCell.Offset(0, 5).Select ActiveCell.Value = […]

VBA – Excel – 自动化错误未指定错误

所以我遇到了一个轻微的绊脚石,希望在这里有人可以帮助我。 总之,我需要访问一串网页(每个网页上的名称列表已经input,该代码工作正常)。 当我的代码访问每个页面时,我需要撤回信息。 不幸的是,出现了一个问题 – 在我得到“自动化错误未指定的错误”之前,甚至无法通过“A”列表,并且它永远不会在同一个位置。 我已经尝试了“正常”的步骤来解决这个问题。 我已经安装了VB 6控件,并且我已经注销并重新注册了mscomctl.ocx,并且包括On Error Resume Next(它什么都不做)。 它在死亡之前通常达到100多例(如前所述,是随机的)。 之后popup错误,当我尝试重新运行它(有或没有更改),并在第一个错误。 如果我重新启动计算机,它会让我再次尝试(无论什么原因),但它仍然没有完成。 代码是否太复杂,我需要减less它? 我可能会find一种方法,使它只能运行每个字母(运行所有的A,然后做B的等),但我仍然无法完成字母A. 我注意到在另一个线程有人build议,而不是使用IE浏览器交换到xmlhttp – 这是一个修复? 这个剧本太长了吗? 我在这里做错了什么? Sub Lookup() Range("AI1").Value = "Unique ID" Range("AJ1").Value = "Name" Range("AK1").Value = "Birth Year" Range("AL1").Value = "Title" Range("AM1").Value = "State" Range("AN1").Value = "Position" Range("AO1").Value = "Country" Range("AP1").Value = "Appointed" Range("AQ1").Value = "Credentials" Range("AR1").Value = […]

加快Excel PowerShell修改文件

我有一个过程,它将在单元格中查找一个值,并将其与一个数组进行比较,然后它将使用第二个数组中的相应值replace该值。 这个脚本正在工作,但我正在研究如何调整它,并使其快速。 $ColorCodes = "001", "002", "003" $FAColors = "Blue", "Red", "White" $XLSXDoc = "c:\Users\w0517\Desktop\ColorCodes.xlsx" $SheetName = "Sheet1" $Excel = New-Object -ComObject "Excel.Application" $Workbook = $Excel.workbooks.open($XLSXDoc) $Sheet = $Workbook.Worksheets.Item($SheetName) $WriteData = $Excel.WorkSheets.Item($SheetName) $RowCount = ($Sheet.usedRange.rows).count write-host The Excel Sheet Has $RowCount Rows For ($J=2; $J -le $RowCount; $J++) { $MainColor = $Sheet.Cells.Item("$J",2).Text $ArrayIndex = [array]::IndexOf($FAColors, […]

IE Automatin单击buttonVBA

我不能从我的HTML代码访问提交button,我尝试了一些代码,但这些东西不工作。 希望你们会从下面的信息中find解决办法。 我的代码: Sub GetIE() Dim shellWins As ShellWindows Dim IE As InternetExplorer Set shellWins = New ShellWindows Set IE = shellWins.Item(0) IE.document.all("linerepricedamount").Value = "Value" IE.document.all("linestatus").Value = "value" 'In Next step i want to click a submit button 'I Tried everything but those codes are not working Set IE = Nothing Set shellWins = Nothing […]

对话框通过python在excel中处理

我自动化一些活动使用Excel中的Excel文件的Excel插入一些数据在Excel中。 我试图在执行所需的操作后保存excel文件,但出现一个对话框,其中包含需要用户注意的选项(“是”或“否”)。 我的脚本应该从Python中select对话框的选项“是”。 但是,无法find适当的方法来做到这一点。 请有人可以提出build议来解决这个问题。 谢谢,