Tag: com

testingExcel是否完成启动/closures序列

我正在使用PowerShell来通过COM脚本通过PowerShell脚本自动完成一些excel任务: $xl = new-object -ComObject Excel.Application sleep 5 DO THINGS… $xl.quit() sleep 5 $null = [System.Runtime.Interopservices.Marshal]::ReleaseComObject($xl) [GC]::collect() 我的问题是,如果我省略了第一次sleep呼叫,Excel将不会准备好执行需要加载项的任务,并且对$xl.quit()的调用不起作用,并且该过程无法退出,如下所示: PS > Get-Process EXCEL Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName ——- —— —– —– —– —— — ———– 784 104 104008 109380 944 3.21 5996 EXCEL 同样,如果我省略了第二次sleep ,excel没有时间完成closures,并最终导致出现一个对话框,指出“Microsoft Excel已停止工作…”,并在下一次Excel启动时,另一个对话框状态“Microsoft Excel未能正常closures,在安全模式下启动? function XLtest { $xl = […]

VB.Net – Excel COM对象没有得到释放

即使在调用ReleaseComObject和GC.Collect方法之后,我仍然面临Excel进程仍处于活动状态的问题。 我的Excel进程终止,但只有在closures用户窗体后 下面是示例代码,它显示了我所做的所有事情摆脱Excel进程: Public Class frmTEST Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim objExcel As xl.Application Dim wbReport As xl.Workbook = Nothing objExcel = CreateObject("Excel.Application") Try wbReport = objExcel.Workbooks.Open("D:\EL\Nicolas\VS Online\Classe A v2\Launcher-v2.2\Resources\Modules\Zoom.xlsm") Catch ex As Exception Common.WriteDebugLog("Exception line 44") End Try If wbReport Is Nothing Then MsgBox("Erreur d'ouverture du reporting – […]

delphi – 在Excel中更改图表标题导致AV – 更新完整的示例

我正在使用Delphi Seattle在Excel(2013)中构build和显示图表。 我从一个数据透视表build立我的图表。 图表显示一切正常。 它有一个默认的标题,所以我想改变这一点。 这应该是一个简单的属性更改,但我不断收到AV错误。 当我谷歌,我可以find最接近的事情提到,我需要select图表和/或图表标题之前,我改变它。 [已更新]这是一个工作示例,显示问题。 procedure TForm1.Button1Click(Sender: TObject); var oExcel : ExcelApplication; RawDataSheet :_Worksheet; myChart: Shape; begin oExcel := CreateOleObject('Excel.Application') as ExcelApplication; oExcel.Visible[LOCALE_USER_DEFAULT] := True; // Add a New Workbook, with a single sheet oExcel.Workbooks.Add(EmptyParam, LOCALE_USER_DEFAULT); // Get the handle to the active Sheet, and insert some dummy data RawDataSheet := oExcel.ActiveSheet […]

Exceltypes库/delphi2009 /坏variablestypes

我们刚从Delphi 2006更新了一个使用Exceltypes库到Delphi 2009的应用程序。我发现现在几乎没有任何东西可用 – 几乎所有对Excel的调用都会产生一个消息“Bad variable type。”。 例如,我们可以这样做:Sheet.Cells.Item [Row,Column] .Value:=其中Sheet是ExcelWorksheet的值,Value是Variant。 我们在堆栈中看到的下一件事是调用Variants中的_DispInvoke,然后调用ComObj。 我究竟做错了什么?

在Python中使用多个Excel工作簿

使用win32com,我有两个工作簿打开。 你怎么知道哪一个是主动的? 你如何改变哪一个是活动的? 你怎么能closures一个而不是另一个? (不是Application.Quit())

自动化Excel从Python获取“TypeError:'unicode'对象不可调用”Range.Address上

根据标题,当我在Python 2.6中运行下面的代码时,我得到了下面的错误: 打印范围。地址(RowAbsolute = False,ColumnAbsolute = False)“ 我知道错误的意思,但MSDN页面( http://msdn.microsoft.com/en-us/library/aa174749(v=office.11​​).aspx )表示这是有效的,并有一个例子。 我已经在EXCEL VBA中试过了,它可以工作。 TypeError:“unicode”对象不可调用 有任何想法吗? 谢谢。 Doanld import win32com.client xlApp = win32com.client.DispatchEx('Excel.Application') xlApp.Visible = True objWkb = xlApp.Workbooks.Add() objSht = objWkb.Worksheets(1) objSht.Cells(2,2).Value = '1' objSht.Cells(2,3).Value = '2' range = objSht.Cells(2,4) range.Value = '=%s+%s' % (objSht.Cells(2,2).Address, objSht.Cells(2,3).Address) range.AddComment('Test Comment') print range.Address print range.Address(RowAbsolute=False, ColumnAbsolute=False) objWkb.Close(SaveChanges=False) #to avoid […]

Powerbook中的Excel workbooks.saveas()错误

我试图将.xls文件转换为.xlxs我尝试了许多变化的代码,但每次我都面临这个错误信息: 除了“SaveAs»avec«2»的说法外:”LaméthodeSaveAs de la classe Workbook aéchoué。 »AucaractèreC:\ temp \ xlsx.ps1:18:6 试试{$ opendoc.saveas($ basename,$ saveFormat)} ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CategoryInfo:NotSpecified:(:) [],MethodInvocationException FullyQualifiedErrorId:ComMethodTargetInvocation 这是我的代码: $excel = new-object -comobject excel.application $excel.Visible = $false $saveFormat = "xlOpenXMLWorkbook"; ls c:\temp\*.xls | %{ $opendoc = $excel.workbooks.open($_.FullName) $excel.DisplayAlerts =$false $basename = $_.basename try{ $opendoc.saveas($basename,$saveFormat,$null,$null,$false,$false,"xlNoChange","xlLocalSessionChanges") # tried this one and got same error : $opendoc.saveas($basename, […]

在未安装MS Office的计算机上使用Office.Interop.Excel

我有一个应用程序使用Microsoft.Office.Interop.Excel,当我部署在没有任何版本的MS Office的机器上时,我得到以下错误 我尝试安装VSTOR,如此所示,因此使用CLSID {00024500-0000-0000-C000-000000000046}回答COM对象无效或未注册,但这不能解决问题。

如何find标有Cell的Excel

这是我的: 1)单元格标签的Excel工作表(名称编辑:在“名称框”中)。 2)与Excel工作表的COM连接。 现在,我怎样才能使用单元格的标签检索单元格的值? 例: mySheet.Cells(1,5).TEXT 会产生单元格R1C5的值。 不过,我找不到任何方法如何使用标签检索值(这可能在旧的DDE),这是我想念的东西 mySheet.Cells("theNameOfTheCell").TEXT 有没有比这更好的指导: https://msdn.microsoft.com/en-us/library/office/ff194567(v=office.14).aspx (我从OpenEdge Progress 11.5, Edit:和Excel 2010工作) 有任何想法吗??

如何在com自动化中启动特定的excel版本?

我通过COM自动化(在C#中)使用Excel,但似乎问题无法控制哪个版本的Excel是开始在盒子上 – 我们同时使用Excel 9和Excel 11和一套特定的电子表格需要excel 9否则他们不会工作。 我包括了excel 9 com引用,但在另一个人机器excel 11开始。 我怎样才能解决这个问题 ?