Bonjour,
J'ai 2 problèmes très déroutants.
1 ) Pour la simple boucle for ci-dessous, j'ai 3 conditions qui sont remplies pour une seule sortie. J'ai vérifié en regardant manuellement et en traçant un graphique que les 8 combinaisons sont bien présentes dans les données.Cependant, cela sort de manière déséquilibrée, où seuls x1, x2 et x3 se rempliront dans toutes les cellules de la colonne X1. L'entrée x2, par exemple, aura le double du nombre d'entrées qui lui sont attribuées. Lors d'une inspection plus approfondie via le sous-ensemble, les colonnes A1, B1 et C1 sont en effet remplies pour x2 et x4, ce qui serait à parts égales. Toutes les colonnes partagent le même type de données et de modélisation.
J'ai également bloqué l'entrée qui rassemble le double des entrées, juste pour voir ce qui se passera. Ensuite, les entrées sont regroupées en x2, par exemple.
For( i = 1, i <= N Rows ( dt ), i++,
If( :A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x1";
:A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x2";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x3";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x4";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x3";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x4";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x1";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x2";
);
);
2) Si je raccourcis le code en attribuant des valeurs à la cellule avec &, j'obtiens une erreur "tentative d'attribution à un objet qui n'est pas une valeur L". Il s'agit d'une tentative de raccourcir mon code et de ne pas avoir plusieurs boucles différentes.Ci-dessous un exemple de 3 critères et 3 sorties.
For( i = 1, i <= N Rows ( dt ), i++,
If( :A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x1" & :Y1[i] = "y1" & :Z1[i] = "z2";
:A1[i] == "a1" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x2" & :Y1[i] = "y3" & :Z1[i] = "z3";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x3" & :Y1[i] = "y2" & :Z1[i] = "z1";
:A1[i] == "a1" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x4" & :Y1[i] = "y4" & :Z1[i] = "z4";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c1", :X1[i] = "x3" & :Y1[i] = "y1" & :Z1[i] = "z1";
:A1[i] == "a2" & :B1[i] == "b1" & :C1[i] == "c2", :X1[i] = "x4" & :Y1[i] = "y2" & :Z1[i] = "z4";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c1", :X1[i] = "x1" & :Y1[i] = "y4" & :Z1[i] = "z2";
:A1[i] == "a2" & :B1[i] == "b2" & :C1[i] == "c2", :X1[i] = "x2" & :Y1[i] = "y3" & :Z1[i] = "z3";
);
);
Toute orientation serait appréciée. Merci pour votre aide en avance !