Tag: vba

在EXCEL VBA中使用C#dll

我在这里遇到一个小问题,需要你们的帮助。 我有一个通过COM互操作公开的C#DLL。 它工作正常,但显然C#interop对象的部署是一场灾难,每次更新DLL时都需要重新计算。 所以我想知道如何使用这个C#DLL中的函数,如下所示:或者我可以通过将DLL和电子表格放在一起来调用函数。 Declare Function getString Lib “” () as string sub test() range(“A1”).value = getString End Sub 语法可能有误。

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

我在VBA中有一些代码块模块可以在少数Access数据库上运行。 如果我想将编码转换为C#环境,我想知道如何继续。 是否有可能实现和获得与我现在使用Access和VBA相同的结果? 在这一点上,我对C#完全陌生。

Canonical:如何从Excel VBA调用.NET方法

我找到了一种直接从VBA宏调用.NET 2代码的方法: Dim clr As mscoree.CorRuntimeHost Set clr = New mscoree.CorRuntimeHost clr.Start Dim domain As mscorlib.AppDomain clr.GetDefaultDomain domain Dim myInstanceOfDotNetClass As Object Set myInstanceOfDotNetClass = domain.CreateInstanceFrom(“SomeDotNetAssembly.dll”, “Namespace.Typename”).Unwrap Call myInstanceOfDotNetClass.ExecuteSomeDotNetMethod (为了使这段代码工作,我想在Excel中使用工具 – >引用…将对mscoree.tlb和mscorlib.tlb的引用添加到Excel VBA) 但这仅适用于.NET CLR 2程序集,最高可达.NET Framework 3.5版。 现在我需要使用.NET 4。 我已经了解.NET CLR4引入了另一种与版本无关的创建运行时实例的方法,我还发现了一个用C ++编写的相当简单的代码示例: http : //dev.widemeadows.de/2014/02/ 04 /托管最净-4-运行时在-一个天然过程/ 但我的Excel VBA技能还不足以将这几行代码转换为工作的VBA makro。 有人可以帮帮我吗?

与C#和VBA并排的COM Interop

我不是在谈论从C#调用VBA COM ……反过来说! 我想要做的是在MS Access中使用VBA调用C#库而无需注册DLL。 我一直在玩并排互操作一段时间没有成功,最后我发现mdb.manifest可能不是exe.manifest的可接受的替代品(可能很明显,我知道,但我我试图保持乐观。 我的问题:是否有可能让VBA加载并排的COM组件? 或者,是否有另一种方法在Access中使用未注册的C#库? (在您提出问题之前,我的理由是:我绝对无法访问我的客户端的Windows注册表 – 这就是为什么它首先在Access中编写。而且,我需要在一个实现相同的function。 C#应用程序很快,而不是两次)。