vb2clr
1.0.0
Kelas pembantu CLRHost
untuk Visual Basic for Applications (VBA) 7.0, menyediakan akses ke rakitan dan kelas CLR (.NET Framework).
Untuk menggunakan .NET (sebelumnya .NET Core), pertimbangkan untuk menggunakan vb2net.
Visual Basic untuk Aplikasi 7.0 (disertakan dalam Microsoft Office 2010 atau lebih tinggi)
LongPtr
menjadi Long
dan hapus semua penentu PtrSafe
. CLRHost
CLRHost
atau memanggil metode Terminate
ketika Anda selesai menggunakan CLR.True
ke TerminateOnExit
dari CLRHost.Initialize
, Anda tidak boleh menghentikan debugger saat menghentikan atau menjeda aplikasi.ExitHandler
tidak dapat dijalankan ketika dihentikan selama jeda, dan aplikasi (termasuk host VBA seperti Excel) dapat menyebabkan kerusakan..utf8.*
, hapus komentar berbahasa Jepang, dan impor. 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
jet (@jet2jet)
Lisensi BSD Baru (atau Lisensi BSD 3-Klausul)