vb2clr
1.0.0
VBA(Visual Basic for Application) 7.0용 도우미 클래스 CLRHost CLR(.NET Framework) 어셈블리 및 클래스에 대한 액세스를 제공합니다.
.NET(이전의 .NET Core)을 사용하려면 vb2net 사용을 고려하세요.
Application 7.0용 Visual Basic(Microsoft Office 2010 이상에 포함)
LongPtr Long 으로 다시 작성하고 모든 PtrSafe 지정자를 제거하세요. CLRHost 클래스를 사용하여 코드 작성 CLRHost 인스턴스를 해제하거나 Terminate 메서드를 호출해야 합니다.CLRHost.Initialize 의 TerminateOnExit 매개변수에 True 전달하는 경우 애플리케이션을 중단하거나 일시 중지할 때 디버거를 중지해서는 안 됩니다.ExitHandler 모듈의 코드를 실행할 수 없으며 응용 프로그램(Excel과 같은 VBA 호스트 포함)이 충돌을 일으킬 수 있습니다..utf8.* 파일을 확인하고 일본어 주석을 제거한 후 가져오세요. Public Sub RegexSample()
Dim host As New CLRHost
Call host.Initialize(False)
On Error Resume Next
Dim asmSys As mscorlib.Assembly
Set asmSys = host.CLRLoadAssembly("System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
Dim cobjRegex As mscorlib.Object
Set cobjRegex = host.CLRCreateObjectWithParams("System.Text.RegularExpressions.Regex", _
"([0-9])+")
Dim cobjColl As mscorlib.Object
Set cobjColl = host.CLRInvokeMethod(cobjRegex, "Matches", "10 20 50 1234 98765")
Dim vMatch As Variant
For Each vMatch In host.ToEnumerable(cobjColl)
Dim cobjMatch As mscorlib.Object
Set cobjMatch = vMatch
Debug.Print "Matches: "; host.CLRProperty(cobjMatch, "Value")
Set cobjMatch = Nothing
Next vMatch
vMatch = Empty
Set cobjColl = Nothing
Set cobjRegex = Nothing
'Call host.Terminate
Set host = Nothing
End Sub
제트기(@jet2jet)
새로운 BSD 라이센스(또는 3조 BSD 라이센스)