Gracias Acalanto por la respuesta y, sobre todo, por la explicación de esa parte del código.
He estado haciendo interrupciones del código para verlo paso a paso y no da ningún resultado, ni con el código comentado abierto, por eso este hilo que inicié.
No obstante, he encontrado una solución en otra página:
Programación en castellano. Foros de debate. Visual Basic programacion gratis
Haciendo algunos cambios de acuerdo a mi necesidad, el código queda así:
En un módulo:
Public Type POINTAPI
X As Long
Y As Long
End Type
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Public Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
Public Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Function Handle() As Long
Dim coord As POINTAPI
Dim punto&
punto = GetCursorPos(coord)
Handle = WindowFromPoint(coord.X, coord.Y)
'si Handle es igual al Handle del combo
If Handle = NombreForm.NombreCombo.hwnd Then
'aquí el código para cuando el Mouse pase por encima del combo
End IfEnd Function
En el formulario donde se encuentra el combo, colocar un Timer
En el Timer poner:
Private Sub Timer1_Timer()
Handle
End Sub
Esto es todo, y gracias una vez más.