Bonjour,
Là je ne vois pas bien où tu veux en venir !
Tu passes des arguments à ta fonction, non typés, on ne ovit donc pas bien le type de données reçues par la fonction.
Liste est censé être un tableau, peut logique de laisser une variable Variant pour l'accueillir, mais il faudrait ce qui est envoyé à l'appel de la fonction... Par contre, pas de raison (apparente) de ne pas typer nmax.
ListeRacc : variable déclarée en Range, mais non initialisée, donc référencée Nothing ! Elle n'est rien si on ne lui affecte pas une référence d'objet Range...
Et je suis curieux de savoir ce que ça peut faire si on lui additionne en boucle les éléments de Liste ! On ajoute des valeurs (supposées numériques puisqu'on utilise +) à son contenu, contenu d'un objet qui n'a pas d'existence...
Et c'est le contenu de cette "plage" que renvoie la fonction...
Pour mémoire, les tableaux en VBA sont constitués dans des variables Tableaux (déclarés, de taille fixe ou dynamique) ou bien par affectation d'un tableau à une variable de type Variant. Seuls les tableaux dynamiques peuvent être modifiés en taille en cours d'exécution (et uniquement la dernière dimension du tableau, si plusieurs).
Cordialement.