Utilizzo questa funzione per trasformare delle date in seriale per avere un valore numerico nel database.

codice:
Function CambioData(D)
  AA=Year(D) 
  MM=Month(D)
  DD=Day(D)
  
  IF Len(AA)=2 then AA="20" & AA
  IF Len(MM)=1 then MM="0" & MM
  IF Len(DD)=1 then DD="0" & DD
  
  CambioData=AA & MM & DD
End Function
 
Function CambioData2(D)
  AA=left(D,4)
  MM=mid(D,5,2)
  DD=mid(D,7,2)
  
 CambioData2=DD & "/" & MM & "/" & AA
end function
Quando la utilizzo faccio :
cambioData(10/10/2000) per trasformare la data in seriale
cambioData2(20001010) per trasformare in data il seriale

Ho un piccolo problema.
Quando in cambioData(data) data ha un valore non possibile
ad esempio il 30 febbraio o il 31 novembre ecc. la funzione mi va in errore.

In inserimento del valore nel campo textbox faccio un controllo javascript del valore inserito sull'evento onBlur.
Ma esiste un modo tipo isDate per controllare se il valore è una data o devo confrontarlo con tutti i casi di errore della data ?

GRAZIE