Suponiendo ese formato con una longitud de 10 caracteres, yo crearía una función:
function snOkFormato(byval txt as string) as boolean
snOkFormato=false ' Hasta comprobar lo contrario
if len(txt)<>10 then exit function ' Comprueba la longitud
if left$(txt,1)<"A" or left$(txt,1)>"Z" then exit function ' No es una letra
if mid$(txt,2,1)<>"-" then exit function ' No es el guión
if mid$(txt,3,1)<"A" or mid$(txt,3,1)>"Z" then exit functión ' tampoco es una letra en la 3ª posición
if mid$(txt,4,1)<"A" or mid$(txt,4,1)>"Z" then exit functión ' tampoco es una letra en la 4ª
if mid$(txt,5,1)<"0" or mid$(txt,5,1)>"9" then exit functión ' La 5ª no es un número
if mid$(txt,6,1)<"0" or mid$(txt,6,1)>"9" then exit functión ' La 6ª no es un número
if mid$(txt,7,1)<"0" or mid$(txt,7,1)>"9" then exit functión ' La 7ª no es un número
if mid$(txt,8,1)<"0" or mid$(txt,8,1)>"9" then exit functión ' La 8ª no es un número
if mid$(txt,9,1)<"0" or mid$(txt,9,1)>"9" then exit functión ' La 9ª no es un número
if mid$(txt,10,1)<"0" or mid$(txt,10,1)>"9" then exit functión ' Ni la 10ª
snOkFormato=true ' Ya sabemos que está bien
exit function