Saya membuat perpustakaan kelas dengan menggunakan C# yang akan digunakan dari VBA. Tapi ada satu hal yang membuat saya patah semangat - ketika saya menghapus atau mengubah beberapa huruf dalam nama metode dan mencoba mengkompilasi proyek vba maka saya tidak mendapatkan kesalahan. Tetapi saya ingin mendapatkan pesan kesalahan kompilasi jika, seperti yang saya ketahui, itu terjadi karena penggunaan pengikatan yang terlambat.
Saya akan mencoba menjelaskannya.
Ini adalah tanda tangan yang benar:
Sub Test() Dim cls as New SomeClass cls.SomeMethod End Sub
Itu adalah tanda tangan dengan salah ejaan:
Sub Test() Dim cls as New SomeClass cls.**SomeMetod** End Sub
Tekan Kompilasi Proyek VBA - semuanya baik-baik saja, tetapi seharusnya tidak demikian.
Saya telah mengubah antarmuka dasar seperti yang ditunjukkan di bawah ini:
[Guid("Some GUID here"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
public interface IComInterface
{}
dan kelas dasar:
[ClassInterface(ClassInterfaceType.None)]
public class BaseClass
Tapi tidak terjadi apa-apa!!! Saya hanya mendapatkan kesalahan saat runtime.