Perdona, la llamda a los metodos del recordset es:
switch(Case intra3.Fields("tipo_nombre").Value){
Es con ( ) no con [ ]
Un pequeño error de lenguajes
Vi en el código que usabas los 4 ultimos registros. No solo el ultimo (MAX) si no los 4 ultimos.
SELECT TOP 4 * FROM tabla ORDER BY id DESC
Me saca los 4 ultimos registros introducidos (DESC)
Con esto, me ahorro dos recordset :D
Un saludo