diff --git a/src/nub.ts b/src/nub.ts
index bb7bff8fad70a4bfe75ab1f56d11699a908417db..e8626d3758b9db4b471d9769a3b0a98f2bb6c562 100644
--- a/src/nub.ts
+++ b/src/nub.ts
@@ -211,25 +211,8 @@ export abstract class Nub extends ComputeNode implements IReferencedNub {
     }
 
     public getReferencedValuesIterator(desc: string): NumberIterator {
-        const tmp = desc.split(".");
-
-        if (tmp.length > 1 && tmp[1] === "")
-            if (this._result !== undefined && this._result.name === tmp[0])
-                return this._result.valuesIterator;
-
-        const p = this.getParameter(desc);
-        switch (p.paramValues.valueMode) {
-            case ParamValueMode.SINGLE:
-            case ParamValueMode.MINMAX:
-            case ParamValueMode.LISTE:
-                return p.paramValues.valuesIterator;
-
-            case ParamValueMode.CALCUL:
-                return this.getReferencedResult(desc).valuesIterator;
-
-            case ParamValueMode.LINK:
-                throw new Error(`Nub.getReferencedValuesIterator() : mode de valeur ${ParamValueMode[p.paramValues.valueMode]} invalide pour le paramètre référencé par ${desc}`);
-        }
+        const ro = this.getReferencedObject(desc);
+        return ro.valuesIterator;
     }
 
     public getReferencedObject(desc: string): NamedIterableValues {