Bonjour a tous !
Je me heurte a un problème que j'avais réussi a outrepasser (en créant le une centaine de requête faisant la même chose, avec une donnée qui change à chaque fois).
Cette fois ci, je ne peux pas faire cela. Puis il est temps de moins se prendre la tête et éviter les erreur du a des copier coller.
Alors je vous explique : J'ai un outil qui me permet de faire une matrice origine destination. C'est un tableau croisée dynamique. Il ressemble a cela :
Ce que je veux c'est désagréger cette matrice pour qu'elle revienne en ligne, c'était leur état avant de faire le tableau croisée. (J'y arrive d’ailleurs en créant une table ou j'insert petit a petit les information de ma matrice)
Alors voila ce que je fait
Requête A_1
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 INSERT INTO Test_desagrgation_matrice ( Origine, Destination, Valeur, pouet ) SELECT Matrice_VL_HPM_1.R_select_depart_matrice_Origine, "1A" AS Expr1, Matrice_VL_HPM_1.[1A], [R_select_depart_matrice_Origine] & [Expr1] AS ID FROM Matrice_VL_HPM_1 WHERE (((Matrice_VL_HPM_1.R_select_depart_matrice_Origine)<>"Total"));
Reqûete A_2
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 INSERT INTO Test_desagrgation_matrice ( Origine, Destination, Valeur, pouet ) SELECT Matrice_VL_HPM_1.R_select_depart_matrice_Origine, "1B" AS Expr1, Matrice_VL_HPM_1.[1B], [R_select_depart_matrice_Origine] & [Expr1] AS ID FROM Matrice_VL_HPM_1 WHERE (((Matrice_VL_HPM_1.R_select_depart_matrice_Origine)<>"Total"));
Requête A_3 ...... Requête B_1 ..... Requête C_1 (6 par lettre et jusqu’à K)
Voila cela fonctionne ... Mais c'est fastidieux et en plus j'ai un problème c'est que les matrices peuvent être différentes, donc j'ai fait le nombre maximal de requête. Mais souvent Access me demande [Vopir photo ci-dessous], ce qui oblige a mettre OK,OK,OK,OK,OK,OK,OK,OK dans le vide si ces valeurs n'existe pas dans la matrice .... Horrible pour un utilisateur de l'outil
Bon du coup ma question c'est : est il possible de désagrégé ma matrice O/D en 1 seul requête, du genre je parcours toute les valeurs et je te remet tout ça en ligne. Je pense que oui en utilisant une boucle, mais je me sens plutôt démuni face aux boucle dans une requête, même aux boucles tout court ...
Partager