Tag: ole

Excel中的“dynamic命名范围”可以使用OLEDB连接访问吗?

我正在尝试访问一个dynamic命名的范围 ,其中经常用到这个目的。 =offset(…,0,0,counta(…),…) dynamic命名范围 “ 在Microsoft Excel中,您可能有一个命名范围,必须扩展以包含新信息。本文介绍了一种创builddynamic定义名称的方法。 但是, OleDbConnection无法识别此对象,并抛出“Microsoft Access数据库引擎无法find对象'Arg4a'的通用错误。请确保该对象存在,并且正确拼写其名称和path名称。 在这里和那里我已经读过, dynamic named ranges不能在这个方法中使用,但是我想要一个确认,然后我可以继续思考一个替代方法。 如下所示,Excel不会列出dynamic版本的value 。 我可以在任何范围(工作簿或特定工作表)中轻松访问_Arg3 ,但是在Arg4中没有运气。 我正在使用一个简单的select,如下面的全局命名范围: var select = "SELECT * FROM _Arg4"; var cmd = new OleDbCommand(select, conn); 和下面的connection string strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FileName + ";Extended Properties=\"Excel 12.0;HDR=" + HDR + ";IMEX=1\"" 因为这种情况也可以用这种语言来实现,所以我也加了vba标签,而且我用了很多与vba相关的来源来学习这个概念。 我正在使用的方法的完整主体是在XLS导入下:将Excel文件导入到DataSet

VBAexception混淆了OLE图片对象的行为

我们有excel表单上的OLE图片对象。 有一些后端处理(C ++ / C#),它返回结果和一个布尔值。 根据布尔值,我们引发exception。 问题是,如果我们提出任何exception,我们的对象处理是抛弃。 而且我们不能删除图片对象。 我究竟做错了什么? 是我的代码或VBA限制的一些问题。 删除不是由任何代码,而是(生活)图片对象和excel删除的简单select。 Dim var1 As Variant Dim returnVar As Variant On Error GoTo CallingTheBackendFn_Error returnVar = CallingTheBackendFn(cellText, outputToCell, var1) If Not returnVar And (var1 <> "") Then On Error GoTo 0 Err.Raise vbError, "TheFunction", var1 End If Exit Sub CallingTheBackendFn_Error: Dim errorNum As Long Dim errorDescp […]

Microsoft Excel正在等待另一个应用程序在第63个循环后完成OLE操作

我一直在使用以下脚本,每天在我们的主要呼叫中心站点上运行呼叫中心座席的座席跟踪报告,该呼叫中心站点在任何时候都有40到50个座席。 我现在正在将这个报告扩展到我们的其他网站,一次只能运行234个代理的报告。 我试图设置234代理的完整列表的循环,63代理完成后,我得到OLE错误。 我已经尝试在整个代码中添加“DoEvents”和“Application.Wait”来减慢速度,并确保在下一次启动之前完成该过程,同时我也将代码从234循环中的1循环分解为4循环60(最后一个循环对于math迷们来说只有54),但是在代理63完成之后,我仍然收到OLE错误。 我怎样才能确定是什么导致此OLE错误? Sub CMSConn() Dim cvsApp As Object Dim cvsConn As Object Dim cvsSrv As Object Dim Rep As Object Dim Info As Object, Log As Object, b As Object Dim Agents(234) As String Dim I As Integer Set wk = ThisWorkbook serverAddress = "xxx.xxx.xxx.xxx" mydate = InputBox("Dates: ") UserName = InputBox("User […]

我想使用mvc5将数据保存在Excel工作表中,但是每次它replace文件,而我想添加上一个

如何在Excel表格中追加数据? 我保存它,但它取代了文件。 我想添加,而不是删除以前的数据。 [HttpPost] public ActionResult excel(Student st) { Excel.Application app = new Excel.Application(); Excel.Workbook myworkbook = app.Workbooks.Add(System.Reflection.Missing.Value); // Excel.Worksheet mysheet = myworkbook.ActiveSheet ; ///////write header in excel mysheet.Cells[1, 1] = "ID"; mysheet.Cells[1, 2] = "Name"; mysheet.Cells[1, 3] = "Email"; mysheet.Cells[1, 4] = "Age"; mysheet.Cells[1, 5] = "PassWord"; mysheet.Cells[1, 6] = "Confirm"; int row = […]

VBA Excel保存embedded的OLE对象

我有很多的工作簿内嵌物件(图像,pdf和zip文件),我需要exctract这些文件到硬盘。 我发现这个代码: Sub Test() 'copy oleobject ActiveSheet.OLEObjects("Objeto 3").Copy 'paste to activeworkbook's path CreateObject("Shell.Application") _ .Namespace(ActiveWorkbook.Path) _ .Self.InvokeVerb "Paste" End Sub 但问题是,你得到的文件没有扩展名。 我需要得到这个图像中出现的对象的名称 但我没有find一个方法来获取这些名称。 有人可以帮我吗?

使用OleFrame(JAVA)在Excel(.xlsx)中删除(隐藏)下拉列表?

我打开excel(.xlsx)文件使用OleFrame,在Excel文件有下拉列表不能隐藏没有点击。如果可以隐藏没有点击…更多细节在这个图像.. 我使用金山电子表格分析和pipe理数据。 public void openExcelSite() { try { File file = new File("D://Book123.xlsx"); clientSite = new OleClientSite(oleFrame, SWT.None, "Excel.Sheet",file); } catch (Exception error) { error.printStackTrace(); } if (clientSite != null) clientSite.doVerb(OLE.OLEIVERB_INPLACEACTIVATE); }

在Word中embedded的多个Excel工作表相对于其文件path的引用

我在网上查了很多,而且自己也不熟练VBA,我来找你帮忙。 问题是: 在一个Word文件中,我已经embedded了多个Excel文档,其中包含文本,如下所示: 文字…文字…文字… “ embedded式Excel文件 ” 文字…文字…文字… “ 另一个embedded式Excel文件 ” 通过同时打开两个embedded式Excel文件(右键单击 – > Worksheet对象 – >打开对象),我可以以传统的方式将单元格链接到另一个单元格(单击单元格内并键入“=”,单击单元格在另一张纸上)。 这允许我根据第一个文件的值计算第二个文件中的东西。 问题是,如果我把这个发送给一个同事作为一个模板,文件path/文件名会改变,然后两张表的引用将不再工作。 有没有解决的办法? 语境: 我希望创build一个用于商业案例的模板。 模板应该很容易使用,用户只需要input特定的数字,剩下的就会自动计算出来,graphics会自动更新等等。在数字之间必须input相关的文字,以提供一个坚实的案例。 编辑1:我必须补充说,Excel文件是在Word中创build的,并且本身没有文件path。 编辑2:如果你能够显示来自同一个embedded式Excel文件的不同部分/表单,可能是一个解决方法,但我还没有find一个方法来做到这一点。 编辑3:从两个embedded文档链接单元格时,通过使用当前的文件path。 问题是,我想这是一个模板,这意味着文件path/文件名会改变,因此它不能是静态的。 我需要它是dynamic的/相对于文件名称/path本身。

perl win32 ole超时

我使用Perl和Win32 :: OLE来自动执行一些Excel任务。 由于Excel文件太大,所以这个过程需要花费相当多的时间来完成…但是在一夜之间离开之后,我认为它由于“超时”问题而卡住了。 如果我减小文件大小,那就没问题。 无论如何,增加超时? 我的代码的一部分: # Open the rules file my $xlBook = $xlApp->Workbooks->Open("$file"); my $xlSheet = $xlBook->Worksheets(1); #Replace FALSE -> 0 $xlSheet->Cells->Replace ({ What => "FALSE", Replacement => "0" }); #Replace TRUE -> 1 $xlSheet->Cells->Replace ({ What => "TRUE", Replacement => "1" });

在网站上编程执行远程计算机上的Excelmacros

我有一个网站,用户使用macros生成Excel报告,当我尝试在我的本地机器上运行它时,它生成完美,并在Excel中运行macros。 当我发布到服务器,同时我在那里login(RDP打开会话),并尝试从该服务器以外的浏览器运行,它也按预期运行。 当我在服务器(RDP)注销,然后在服务器之外的浏览器(即从我的机器)运行它时,问题发生macros不运行,但创build我的Excel。 这是我正在使用的代码 public class Report { protected Workbook Workbook { get; set; } protected Application Excel { get; set; } public void RunReport() { // Launch Excel on the server Excel = new Application { DisplayAlerts = false, ScreenUpdating = false, Visible = false }; // Load the workbook template Workbook = Excel.Workbooks.Open(@"D:\Book1.xlt"); […]

Excel:检测OLE自动化?

我们有一个使用OLE将数据写入Excel的第三方程序。 不幸的是,该应用程序的程序员不明白,使Excel的隐形和隐藏更新速度超过极大的。 此时,大件工作需要15分钟才能完成,这很烦人。 所以我想编写一个Addin,当程序写入excel时closures可见性等。 有没有办法做到这一点? 它是唯一使用这种技术的应用程序,所以检测COM / OLE交互就足够了。