poi l'errore che dicevo su IIF, leggendo la documentazione il comportamento in vb.net è diverso rispetto a vb6, in vb6 viene valuta l'intera espressione e questo puo' provocare un errore indesiderato. Quindi anche un'istruzione di tipo "vecchio" ha un comportamento diverso, in sostanza non è detto che i comportamenti siano uguali anche x una stessa istruzione.