Tag: pia

用韩语删除CustomProperty的Excel问题

在韩文操作系统中,当我尝试调用CustomProperty对象上的Delete()方法时,出现以下exception。 我正在使用Office2003 PIA for Excel在C#中执行此操作。 这HRESULT是不是对我有帮助,任何人都可以帮助弄清楚这是怎么回事? "Exception from HRESULT: 0x800A03EC"} System.Exception {System.Runtime.InteropServices.COMException} at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData) at Microsoft.Office.Interop.Excel.CustomProperty.Delete()

通过.NET Office PIA在Excel.Application中设置当前目录

我想从.NET应用程序创buildExcel电子表格,然后将Excel.Application实例当前目录设置为一个自定义文件夹。 我想这样做,所以当用户单击Excel中的保存button时,另存为对话框已经位于正确的目录中。 我知道可以使用VBA.FileSystem.ChDir在Excel Instance中更改当前目录,并使用VBA Code / Macro在Excel.Application实例中执行此操作,如下所示: 从C#.NET创build一个Excel电子表格 Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application(); excel.Workbooks.Add(); excel.Visible = true; Excel电子表格打开时,按ALT + F11。 然后创build并运行下面的macros Sub SetChdir() Call FileSystem.ChDir("C:\To\My\Custom\Directory\") End Sub 当单击Excel中的保存时,当前目录被设置为使用ChDir的path 我不知道,或者即使有可能,如何从.NET创build这种行为。 我厌倦了Excel使用Excel.DefaultFilePath启动时设置当前目录。 但有两个问题: 当DefaultFilePath设置为不同的值时,您需要重新启动Excel以使其对新的或打开的电子表格有影响 我真的不想更改用户当前的DefaultFilePath,因为它是Excel的全局值,而不是这个单独的电子表格。

如何使用PIA(2010,版本14.0)和目标机器创buildExcel应用程序没有安装MS Office客户机

我面临一个问题,实际上我需要in C# using VS2012, .Net framework 4.5创build一个应用程序来读取excel并执行一些操作,但问题是目标机器上没有安装MS Office客户机。 其中一个限制是我不能使用Open XML等其他打开的程序集。我只能使用2010 PIA 。 如果有人能解释我怎么能实现这个,那将会很棒。

使用c#移动到Excel中下一行的下一个单元格

如何使用C#移动到Excel中的下一行。 我正在使用Office PIA v 14.当我使用Range.Next属性时,它将我带到紧邻范围的单元格。 我怎样才能移动到下一行? 即。 紧接在下面的单元格。

使用ASP.NET自动化Excel

背景 我们正在使用ASP.NET 2.0开发一些内部实用程序。 其中之一是从数据库中提取一些信息,并build立一个Excel工作簿,其中包含许多基于查询数据的电子数据表。 问题 概念validation原型(从数据库查询单个项目并打开Excel以将数据添加到工作表的简单ASP.NET页面)在开发机器上本地运行时运行良好,可以愉快地创build和显示Excel电子表格按照要求。 但是,在我们的服务器上运行时,尝试实例化Excel时出现以下错误。 无法将“Microsoft.Office.Interop.Excel.ApplicationClass”types的COM对象转换为接口types“Microsoft.Office.Interop.Excel._Application”。 此操作失败,因为具有IID“{000208D5-0000-0000-C000-000000000046}”的接口的COM组件上的QueryInterface调用由于以下错误而失败:没有此类接口支持(exception来自HRESULT:0x80004002(E_NOINTERFACE)) 。 解? 我们使用PIA for Excel 2003,并且在服务器上安装了Excel 2003和PIA。 任何人都可以解释为什么这不起作用,或给我们一些提示,我们可以跟踪这个问题? 感谢您提供的任何帮助。

Excel进程不会closures

一旦完成使用,我无法使EXCEL(32)进程closures。 正如你可以在下面的代码中看到的,一旦ProcessRFAFData函数完成其执行,EXCEL进程不会closures(我仍然可以在任务pipe理器中看到EXCEL.EXE*32 )。 由于这个原因,当SaveErrors开始执行时,我得到以下exception: System.Runtime.InteropServices.COMException (0x800A03EC): Microsoft Office Excel cannot open or save any more documents because there is not enough available memory or disk space. • To make more memory available, close workbooks or programs you no longer need. • To free disk space, delete files you no longer need from the disk you […]

添加新工作表到现有文件后C#interop:excel进程不退出

可能重复: 如何正确清理C#中的Excel互操作对象 我已经阅读了许多关于pipe理COM引用的其他线程,同时使用.Net-Excel互操作来确保Excel进程在退出时正确退出,到目前为止技术运行良好,但是最近我遇到了将新工作表添加到现有工作簿文件时出现问题。 下面的代码留下了一个僵尸Excel过程。 如果我将工作表添加到新创build的工作簿文件,它退出罚款。 如果我运行的代码不包括.Add()行,它退出罚款。 (我正在阅读的现有文件是由注释掉的代码创build的空文件) 有任何想法吗? //using Excel = Microsoft.Office.Interop.Excel; //using System.Runtime.InteropServices; public static void AddTest() { string filename = @"C:\addtest.xls"; object m = Type.Missing; Excel.Application excelapp = new Excel.Application(); if (excelapp == null) throw new Exception("Can't start Excel"); Excel.Workbooks wbs = excelapp.Workbooks; //if I create a new file and then add a […]

尝试使用Excel 2007执行Office自动化,但仍使用Excel 2003

环境: Windows XP机器 安装Excel 2007和Excel 2003(按顺序,不按时间顺序)。 C#3.5 问题: 当我使用PIA做一些Office自动化时,我使用下面的代码行: var excel = new ApplicationClass(); PIA的版本专门将其称为Excel 12。 C:\ Windows \组件\ GAC \的Microsoft.Office.Interop.Excel \ 12.0.0.0__71e9bce111e9429c \ Microsoft.Office.Interop.Excel.dll 但: excel.Version;//this is 11.0 instead of 12.0 因此,当我尝试打开扩展名为.xlsx的文件时,它会警告我在文件转换中丢失的function,并用excel 2003打开它。我非常肯定它与安装顺序是2007 – > 2003有关,但我不能卸载2003在我的机器上我们有一些办公自动化在我们的networking服务器上使用excel 2003的无关项目。 我已经看了Policy.11.0.Microsoft.Office.Interop.Excel.config的东西,但它说 <bindingRedirect oldVersion="11.0.0.0" newVersion="12.0.0.0"></bindingRedirect> 所以,我不知所措。 为什么我不能告诉COM Interop要使用哪个版本的Excel?