diff --git a/src/app/components/verificateur-results/verificateur-results.component.ts b/src/app/components/verificateur-results/verificateur-results.component.ts
index 08c3ef53cb34fde6236f20c9563fbaf662096f00..2222240c55be3b5b886d42cb71342ffe1271f959 100644
--- a/src/app/components/verificateur-results/verificateur-results.component.ts
+++ b/src/app/components/verificateur-results/verificateur-results.component.ts
@@ -101,8 +101,6 @@ export class VerificateurResultsComponent extends ResultsComponentDirective impl
         if (this._verificateurResults) {
             // = 0 lorsque rien ne varie
             const vi = this._verificateurResults.variableIndex;
-            // log du Verificateur pour l'itération en cours
-            const element = { message: Message, subLog: cLog };
             if (
                 this._verificateurResults.result
                 && this._verificateurResults.result.hasResultElements()
@@ -123,7 +121,12 @@ export class VerificateurResultsComponent extends ResultsComponentDirective impl
             if (l.length === this._verificateurResults.especeResults.length) {
                 for (let i = 0; i < this._verificateurResults.especeResults.length; i++) {
                     const er = this._verificateurResults.especeResults[i];
-                    if (er && er.hasResultElements() && er.resultElements[vi].hasLog()) {
+                    if (
+                        er
+                        && er.hasResultElements()
+                        && er.resultElements[vi]
+                        && er.resultElements[vi].hasLog()) 
+                    {
                         l[i].subLog.addLog(er.resultElements[vi].log);
                     }
                 }
diff --git a/src/app/formulaire/definition/form-verificateur.ts b/src/app/formulaire/definition/form-verificateur.ts
index 3059f51c5eea3e81de7a042954eee79769711b90..ad7f3fffcdf6b1a18f31f02dfac3cb563e7a632f 100644
--- a/src/app/formulaire/definition/form-verificateur.ts
+++ b/src/app/formulaire/definition/form-verificateur.ts
@@ -4,6 +4,8 @@ import { SelectFieldCustom } from "../elements/select-field-custom";
 import { FormulaireFixedVar } from "./form-fixedvar";
 import { VerificateurResults } from "../../results/verificateur-results";
 import { CalculatorResults } from "../../results/calculator-results";
+import { NgParameter } from "../elements/ngparam";
+import { ServiceFactory } from "../../services/service-factory";
 
 /**
  * Formulaire pour les Vérificateurs
@@ -34,18 +36,23 @@ export class FormulaireVerificateur extends FormulaireFixedVar {
         this.reaffectResultComponents();
     }
 
+    protected findPassVariatedParameters(): NgParameter[] {
+        let pvp = []
+        const passUid = this.verificateurNub.nubToVerify.uid;
+        const passForm = ServiceFactory.instance.formulaireService.getFormulaireFromNubId(passUid);
+        pvp = passForm.getVariatedParameters();
+        return pvp;
+    }
+
     protected reaffectResultComponents() {
         const ver: Verificateur = (this.currentNub as Verificateur);
-        // const varParams: NgParameter[] = this.getVariatedParameters();
 
         // résultat de calcul de la passe à macrorugo complexe
         const vr = this.verificateurResults;
-        // vr.calculatedParameter = computedParam;
         vr.result = ver.result;
-        /* if (varParams) {
-            vr.variatedParameters = varParams;
-        } */
-        vr.variatedParameters = [];
+
+        // paramètres qui varient, pour le sélecteur d'itération
+        vr.variatedParameters = this.findPassVariatedParameters();
 
         // résultat de chaque Espece
         const er: Result[] = [];
diff --git a/src/app/results/verificateur-results.ts b/src/app/results/verificateur-results.ts
index 3047857202f970b00114f6a6cec930e1956c1942..59b1cdd26ed29dae08f92380b11682e7ce0f8ec9 100644
--- a/src/app/results/verificateur-results.ts
+++ b/src/app/results/verificateur-results.ts
@@ -7,6 +7,11 @@ export class VerificateurResults extends MultiDimensionResults {
     /** résultats des modules Espece */
     public especeResults: Result[];
 
+    public constructor() {
+        super();
+        this.reset();
+    }
+
     public reset() {
         super.reset();
         this.especeResults = [];
diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json
index 8f6a2e6fac9bc656cda52f35f860c3f88c59ab0d..728fc8d755e46d984dc50425786d7cccd73d4858 100644
--- a/src/locale/messages.en.json
+++ b/src/locale/messages.en.json
@@ -555,6 +555,7 @@
     "INFO_TRIGO_TITRE": "Trigonometric function",
     "INFO_TRIGO_TITRE_COURT": "Trigo. f.",
     "INFO_VERIF_OK": "Crossing criteria are met for all species",
+    "INFO_VERIF_VARYING_OK": "Crossing criteria are met for all species and all pass modalities",
     "WARNING_VERIF_OK_BUT": "Crossing criteria are met for all species, but there are warnings",
     "INFO_VERIFICATEUR_CUSTOM_SPECIES": "Custom species: %s",
     "INFO_VERIFICATEUR_SPECIES_GROUP": "Species group",
@@ -641,6 +642,7 @@
     "ERROR_VERIF_PAR_DH": "Downstream pass fall prevents crossability",
     "ERROR_VERIF_PAR_YMIN": "Water level %h% too low (minimum: %minY%)",
     "ERROR_VERIF_KO": "Crossability criteria are not met for at least one species group",
+    "ERROR_VERIF_VARYING_KO": "Crossability criteria are not met for at least one species group, for all pass modalities",
     "ERROR_VERIF_SPECIES_GROUP_KO": "Crossability criteria are not met for species group ENUM_%speciesGroup%",
     "WARNING_VERIF_SPECIES_GROUP_OK_BUT": "Crossability criteria are met for species group ENUM_%speciesGroup%, but there are warnings",
     "INFO_VERIF_SPECIES_GROUP_OK": "Crossability criteria are met for species group ENUM_%speciesGroup%",
diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json
index 14a4a2934ed14dd50bac62eb858236465796602d..9a77d60bdd6673d4e6fad670443e40cb45aac995 100644
--- a/src/locale/messages.fr.json
+++ b/src/locale/messages.fr.json
@@ -556,7 +556,9 @@
     "INFO_TRIGO_TITRE": "Fonction trigonométrique",
     "INFO_TRIGO_TITRE_COURT": "F. trigo.",
     "INFO_VERIF_OK": "Les critères de franchissement sont remplis pour toutes les espèces",
+    "INFO_VERIF_VARYING_OK": "Les critères de franchissement sont remplis pour toutes les espèces et toutes les modalités de la passe",
     "WARNING_VERIF_OK_BUT": "Les critères de franchissement sont remplis pour toutes les espèces, mais il y a des avertissements",
+    "WARNING_VERIF_VARYING_OK_BUT": "Seules certaines modalités de la passe sont franchissables",
     "INFO_VERIFICATEUR_CUSTOM_SPECIES": "Espèce personnalisée&nbsp;: %s",
     "INFO_VERIFICATEUR_SPECIES_GROUP": "Groupe d'espèces",
     "INFO_VERIFICATEUR_TITRE": "Vérification d'une passe",
@@ -607,6 +609,7 @@
     "INFO_PARENT_PREFIX": "%name% n°%position% : ",
     "INFO_PARENT_PREFIX_DOWNWALL": "cloison aval : ",
     "ERROR_VERIF_ERRORS_IN_PASS": "La passe à vérifier contient des erreurs",
+    "ERROR_VERIF_VARYING_ERRORS_IN_PASS": "La passe à vérifier contient des erreurs à l'itération %i%",
     "ERROR_VERIF_MR_VMAX": "Vitesse maximale %V% trop élevée (maximum&nbsp;: %maxV%)",
     "ERROR_VERIF_MR_YMIN": "Tirant d'eau %Y% insuffisant (minimum&nbsp;: %minY%)",
     "ERROR_VERIF_MRC_AT_LEAST_ONE_APRON": "Aucun des radiers n'est franchissable",
@@ -642,6 +645,7 @@
     "ERROR_VERIF_PAR_DH": "La chute en pied de passe empêche le franchissement",
     "ERROR_VERIF_PAR_YMIN": "Tirant d'eau %h% insuffisant (minimum&nbsp;: %minY%)",
     "ERROR_VERIF_KO": "Le franchissement est impossible pour au moins un groupe d'espèces",
+    "ERROR_VERIF_VARYING_KO": "Le franchissement est impossible pour au moins un groupe d'espèces, pour toutes les modalités de la passe",
     "ERROR_VERIF_SPECIES_GROUP_KO": "ENUM_%speciesGroup% : franchissement impossible",
     "WARNING_VERIF_SPECIES_GROUP_OK_BUT": "ENUM_%speciesGroup% : OK, avec des avertissements",
     "INFO_VERIF_SPECIES_GROUP_OK": "ENUM_%speciesGroup% : OK",