Modules |
5.64 API - Verificare l'esistenza di una Funzione/Sub nel modulo di classe di una Form |
Alessandro Baraldi |
Con il codice VBA che segue è possibile determinare se una funzione o sub è già presente nel modulo di classe di una maschera. Private Const WLIB_WM_PROCEXISTS = 1434 Private Declare Function SendMessageStr _ Lib "USER32" Alias "SendMessageA" _ (ByVal hWnd As Long, ByVal wMsg As Long, _ ByVal wParam As Long, ByVal strName As String) As Long Public Function CBFProcExists(frm As Form, ByVal strProcName As String) As Boolean strProcName = StrConv(strProcName, vbUnicode) & vbNullString CBFProcExists = (SendMessageStr(frm.hWnd, _ WLIB_WM_PROCEXISTS, 0, strProcName) <> 0) End Function Negli argomenti della funzione: - frm è il riferimento ad una maschera aperta nel cui modulo di classe si vuole verificare l'esostenza di una funzione o sub. - strProcName è il nome della funzione o sub da cercare. La funzione restituirà il valore booleano True se la funzione/sub esiste nel modulo di classe della maschera, in caso contrario restituirù il valore False. La stringa deve essere UNICODE per la chiamata API. |