سلام
کمتر دیده شده که از دستور when در catch استفاده بشه اما این دستور خیلی کاربردیه به مثال پایین توجه کنید:

Dim a As Int16 = 32766 
Dim b As Int16 = 2
Try   
a += b 
Catch ex As Exception When b > 1 
  MessageBox.Show(ex.ToString) 
Finally 
End Try