草庐IT

windows - 在不同模块中 Access VBA Form Private Sub 调用 Public Function

在我的数据库中,我在一个模块中有一个公共(public)函数,它接收一个SQL字符串并返回一个打开的记录集。此函数在被此模块和其他模块中的其他公共(public)子程序调用时工作正常。但是,如果我尝试使用完全相同的代码调用相同的函数,则会出现编译错误:“参数数量错误或属性分配无效。”如果我将确切的代码剪切并粘贴到另一个模块中作为公共(public)子模块,它可以正常工作。我怀疑这个问题与命名或隐藏变量有关。不幸的是,我无法通过搜索找到任何解决方案。PublicFunctionQuery(SQLAsString)AsADODB.RecordsetDimcnnConnAsADODB.Con

windows - 尝试使用vba自动拆分excel中的数据

我完全没有使用excelvba进行编程的经验,除了我编写了一个函数来将数据戳添加到几周前在我们的生产线上扫描的条形码,主要是通过反复试验。无论如何,我现在需要帮助的是库存即将到来,我们拥有的每件商品都有条形码,通常扫描到记事本中,然后手动拉入excel并使用“文本到列”。我找到了excel拆分功能,并希望得到一些帮助,让它与我扫描的条形码一起使用。数据的格式为:11111*A153333*11/30/11加上回车符,其中*是分隔符。我发现的所有示例似乎都没有任何作用。例如,这是我在“”处拆分时发现的一个,但如果我将其更改为*,则什么也不会发生。SubsplitText()'splits

vba - MSDataShape 错误,升级到 Windows 10 功能更新 1809 时损坏

在我们的VB6应用程序中,我们使用ADODB.Recordsets并利用MSDataShape的数据提供程序来使用SHAPE命令创建关系记录集。在最新的Windows10功能(1809)中,我们的代码因以下错误而中断:-"-2147217900LengthofNEWcolumnSiteCodecannotbezero"来自excel中的以下宏(其中MDAC是引用)PublicSubTestRun()DimrsStockCheckAsRecordsetOnErrorGoToErrorHandler'setupshaperecordsetSetrsStockCheck=NewRecords

c# - 如何在文档级加载项中将 C# 类公开给 VBA 模块?

这是一个假设情况。我想知道是否可以在文档级加载项中向VBA公开C#类。这是一个SSCCE:在VSPRO2012中,我开始了一个新项目,SelectedOffice->Excel2010Workbook.(makesureyouselect.Netframeworkver4)我已将DateTimePicker控件添加到Sheet1。我可以在C#解决方案中设置/获取.Value属性关闭DateTimePicker控件而不会出现问题。调试时:在VBA中,.Value属性未公开。(尝试过.OLEFormat.Object.Value)并非所有属性都可以向VBA公开,因为ActiveX控件Dat

Word vba宏按钮只能工作一次

我正在尝试创建一个复制整个页面内容的按钮,并将其粘贴到同一文档中的新页面。当我首次将其格式化为大型汤顿(CTRL+F9)时,它将多次工作。现在,我已经在旧版表单(开发人员选项卡)下使用命令按钮作为单击事件尝试了一下,它只能使用一次。我不确定为什么会发生这种情况。这是我的代码:PrivateSubAddPage3_Click()ConstwdPageBreak=7ActiveDocument.Bookmarks("\page").Range.CopySelection.InsertBreak(wdPageBreak)Selection.PasteSelection.TypeBackspaceSe

c# - 一种自动化MS Office VBA代码 "Compile"函数的方法

通常,当我对VBA文件进行更改时,我喜欢编译它以确保我的更改不会破坏任何内容:但是在不同版本的office在不同的机器上编译会得到不同的结果,有时会编译,有时不会...东西likethis可能发生,或者maybethis.结果在每个版本的excel中都有各种thingscanbedifferent(不只是引用,尽管这是最常见的问题)。如何自动编译我的VBA代码?我希望能够在Excel、PowerPoint和Word等多种产品中执行此操作,我希望能够编译为32位和64位,包括2010、2013、2016等......更新1是的,这仍然是一个主要的痛点,现在我有一系列手动测试人员(人员)根

c# - 是否可以将 VBA 转换为 C#?

我在VBA中有几个代码块模块可以在几个Access数据库上运行。我想知道如果我想将编码转换为C#环境应该如何进行。是否有可能实现并获得与我现在使用Access和VBA获得的结果相同的结果?在这一点上,我对C#完全陌生。 最佳答案 目前无法自动转换,但手动转换也有助于提高您的C#技能。这里有一篇Top10文章,带您了解常见差异:http://msdn.microsoft.com/en-us/library/aa164018%28office.10%29.aspx您可能还会发现以下链接很有用:使用C#开发Office解决方案的MSDN页

c# - 无法从 VBA (VB6 ok) 实例化用 C# 编写的 COM 对象

使用VS2008,这是我的COM对象usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Runtime.InteropServices;usingSystem.Windows.Forms;namespaceTestCom{[Guid("9E5E5FB2-219D-4ee7-AB27-E4DBED8E123E")][ClassInterface(ClassInterfaceType.AutoDual)][ProgId("Test9.COMINT")]publicclassTestComClass

使用VBA更改子文件夹中的文件名

我正在尝试将其中的文件上载几百个文件夹,其中包括其中的文件,但不幸的是,SharePoint不允许任何特殊字符,例如“%”。我正在尝试使用一个可以自动进入每个子文件夹并替换文件中包含的任何特殊字符的VBA代码,例如“%”,“”#”,等。到目前为止,我所拥有的是:SubChangeFileName()SetobjFSO=CreateObject("Scripting.FileSystemObject")SetFolder=objFSO.GetFolder("C:\Users\Documents\TEST\Subfolder")'CurrentlythewayIhaveitrequiresmeto

C# ITypeInfo.GetContainingTypeLib 在传递 VBA 类的实时实例时失败

所以我尝试在VBA类实例上调用ITypeInfo,虽然它看起来很有希望,但我想看看我是否可以获得对其包含项目的引用,类似于类型库。我认为ITypeInfo.GetContainingTypeLib可能有用,但它会抛出一个异常,表明VBA不会合作。有人知道VBA如何以不同于标准COM规范的方式做事吗?C#类库代码在这里。注册COM互操作并在AssemblyInfo.cs中设置COMVisible(true)以使其可从VBA访问。下面给出了VBA客户端代码。usingSystem;usingSystem.Runtime.InteropServices;usingSystem.Runtime