Solo por probar, puse dos ComboBox en un Userform con el siguiente código:
<pre>
Option Explicit
Private Sub ComboBox2_AfterUpdate()
MsgBox "After"
'ComboBox1.SetFocus
End Sub
Private Sub ComboBox2_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox "Before"
'ComboBox1.SetFocus
End Sub
Private Sub ComboBox2_Change()
MsgBox "Change"
End Sub
</pre>
Con este ejemplo se puede ver que para un ComboBox el evento que se dispara cuando se cambia o se selecciona un valor de la lista es el change, los otros dos se dispararon únicamente cuando cerraba el UserForm.
Con esto quiero decir que habría que poner la instrucción:
ComboBox1.SetFocus
en el evento Change() y no en los otros. Una última cosa... esto es para controles COMBOBOX, para TextBox los dos eventos anteriores si se disparan como "debería" ser.