effectivement, comme le dit Stéphane, il ne faut pas que tes fonctions renvoient une valeur de type Integer. Le format par défaut d'Excel et le format Double. Donc en remplaçant le type Integer par Double dans tes macros, tu verras réapparaître tes décimales correctement.