[ACCESS] tableau sous access (VBA)

tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008 - 25 juin 2007 à 10:02
 John Koenig -
bonjour a tous.
tout d'abord merci a tout ceux qui aide et demande sur ce forum. ca aide bien du monde.

ensuite, je debute sur access 2002.
j'ai un probleme d'organisation de tableau . je travail sous VBA . en fait j'ai deux tableau que je doit comparé ligne par ligne . je developpe. je doit comparer la ligne 1 avec la ligne 1, la 2 avec la 2 etc ...
néanmoins, lorsque je crée mes tableau, je les tri de la meme maniere:

req3 = "SELECT NUM_LIGNE, NUM_VOIE_O, PKO, PKRO, INDICE_PK, PKF, PKRF "
req3 = req3 & " INTO T_AEINPK FROM SIAMDBA_AEINPK "
req3 = req3 & " ORDER BY NUM_LIGNE, NUM_VOIE_O, PKO, INDICE_PK; "

j'ai un tableau t_aeinpk qui se crée et s'ordonne de maniere: A, B ,C, D, 1, 2, 3, 4, ....

req4 = " SELECT NUM_LIGNE, NUM_VOIE, PKO, PKRO, IND_PKO, PKF, PKRF "
req4 = req4 & " INTO T_TEST FROM TEMP_AEVOIE "
req4 = req4 & " ORDER BY NUM_LIGNE, NUM_VOIE, PKO, IND_PKO; "

ici mon tableau (T_TEST) s'organise de maniere: 1, 2, 3, 4, A, B ,C , D

TEMP aevoie est un tableau crée a partir de cette requete qui demande déja une organisation.

req = "SELECT NUM_LIGNE, NUM_VOIE, PKO, IND_PKO, PKRO, PKF, IND_PKF, PKRF "
req = req & " INTO T_AEVOIE FROM SIAMDBA_AEVOIE "
req = req & " ORDER BY NUM_LIGNE, NUM_VOIE, PKRO; "

donc je n'arrive pas a réorganisé TEMP_AEVOIE, ainsi j'ai crée T_TEST pr réorganisé simplement les donnée, mais elles s'organise mal, et ainsi je ne peut pas coimparé mes donnée.

merci d'avance pr vos réponse.

tazagaga.
A voir également:

9 réponses

Salut,

Si j'ai bien compris tu veux classer par ordre alphabétique 2 séries de données pour les comparer 2 à 2 c'est ca?

1, 2, 3, 4, A, B ,C , D représente 1 record?

excuse moi mais je n'ai pas tout à fait saisi ton problème je pense ;-)

JohnKoenig
0
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
25 juin 2007 à 11:49
alor en fait je veut les comparé un a un:
comparé la ligne 1 du tableau1 avec la ligne 1 du tableau 2
puis:
comparé la ligne 2 du tableau1 avec la ligne 2 du tableau 2
puis
comparé la ligne 3 du tableau1 avec la ligne 3 du tableau 2
etc ....

dans le tableau 1 j'ai fait un tri du type :
ORDER BY NUM_LIGNE, NUM_VOIE_O, PKO, INDICE_PK
donc ca me donne :

NUM_LIGNE, NUM_VOIE_O, PKO, PKRO, INDICE_PK, PKF, PKRF
A .....................1.................X........X..........A.......... X...... X
B .....................2.................X........X..........A..........X...... X
C .....................2 .................X ...... X..........G .......... X...... X
1 .....................A .................X........ X..........T.......... X...... X
2 .....................B.................X ........ X..........A.......... X...... X
3 .....................5.................X........ X..........C.......... X...... X

dans le tableau 2 j'ai fait un tri du meme type :
ORDER BY NUM_LIGNE, NUM_VOIE, PKO, IND_PKO
donc ca me donne :

NUM_LIGNE, NUM_VOIE_O, PKO, PKRO, IND_PKO, PKF, PKRF
1 .....................A .................X........ X..........T.......... X...... X
2 .....................B.................X ........ X..........A.......... X...... X
3 .....................5.................X........ X..........C.......... X...... X
A .....................1.................X........X..........A.......... X...... X
B .....................2.................X........X..........A..........X...... X
C .....................2 .................X ...... X..........G .......... X...... X

donc je doit comparé les ligne (inverse de colonne rien a voir avec "NUM_LIGNE") une par une de chaque tableau. pour dire si elle sont similaire ou pas au final c'est tout.

mais avec cet ordre je ne peu pas.je veut juste arrivé a avoir dans mon tableau 2 :

NUM_LIGNE, NUM_VOIE_O, PKO, PKRO, IND_PKO, PKF, PKRF
A .....................1.................X........X..........A.......... X...... X
B .....................2.................X........X..........A..........X...... X
C .....................2 .................X ...... X..........G .......... X...... X
1 .....................A .................X........ X..........T.......... X...... X
2 .....................B.................X ........ X..........A.......... X...... X
3 .....................5.................X........ X..........C.......... X...... X


le bon ordre.
0
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
25 juin 2007 à 13:54
UP!
need help !
en plus j'ai l'impression que c'est pas dur, ou un bug d'access 2002??. car je ne comprend pas avec le meme tri, d'avoir deux résultat différent .

merci d'avance

tazagaga
0
Hello,

J'ai testé sur Access un truc et j'obtiens ton résultat:

la requête pour une table l'ordre est ABD123 et pour la requête dans l'autre table j'ai 123ABD

La cause dans mon test est que qu'il y a un espace devant les lettres dans la séquence ABD123. Du coup comme le caractère espace vient avant les chiffres tes lettres sont avant les chiffres. Je te conseille de vérifier que tu n'as pas d'espace.

fais mois savoir si ca t'aide...

JohnKoenig
0
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
25 juin 2007 à 14:33
il ne faut pas que j'ai d'espace dans la table a trié ?
sinon je n'ai pas d'espace devant mes lettre.
de plus les base de donnée sont protégé je ne peu y accéder et y faire des motif .

j'était en train de me demander si les clé primaire n'interviendrait pas.

en effet sur le tableau ou j'ai ABC123, le tableau à trié, a des clé primaire sur le NUM_LIGNE et le NUM_VOIE

alor que le tableau ou j'ai apres le tri 123ABC, n'a aucun clé primaire a l'origine .

j'espere me faire comprendre lol.

de plus si je fait un tri avancé avec "croissant" a la ligne / voie / pko
il me met le tableau1 et 2 sous forme: 123abc.
néanmoins en VBA je ne peu pas.

merci de s'occuper de moi ;D
0
Q) il ne faut pas que j'ai d'espace dans la table a trié ?
R) Je disais que tu dois vérifier de ne pas avoir d'espace devant les lettres genre
<espace>A
<espace>B
<espace>B
1
2
3

(bien entendu <espace> représente un espace ;-) )


Q2) j'était en train de me demander si les clé primaire n'interviendrait pas
R2) A priori je ne vois pas pourquoi une clé (même multiple) pourrait avoir un effet de bord sur le tri. Pour info j'ai essayé et ca n'a rien changé.

Q3) Question bête... as-tu essayé de créer tes requêtes dans Access et de les tester pour voir si l'ordre était juste ou pas (cela permettrait d'écarter les hypothèses d'erreurs sur les données et sur les champs de tes tables).

Q4) en allant plus loin je me demande si ce n'est pas un problème de "collation". EN effet, en fonction des langues ou des besoins tu peux changer la fonction de classement. Exemple: dans une langue l'ordre alphabétique n'est pas "abcdefghij..." mais "rfksie..." par conséquent il faut pouvoir dire je veux un classement alphabétique dans la langue x.
Mais je ne sais pas si Access l'utilise (cela fait un moment que je n'utilise plus access).

A+,

JohnKoenig
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
25 juin 2007 à 15:23
Q3)
R3) en effet j'ai tester l'histoire des clé primaire etc ... cela n'apporte rien de plus, et joue en rien sur le classement .

Q4)
R4) apres vérification je confirme qu'il n'y a pas de porbleme de "collation" meme language, meme type de champ etc ...

précsion et test:
avec des requete j'ai tester et ca donne le meme résultat, une table classé en abc123 et l'autre table se classe en 123abc
la fameuse "autre table" (tableau2) est comme je l'ai dit plus haut issue d'une requete de création de table avec déja une organisation de demandé:

[quote]
TEMP_aevoie est un tableau crée a partir de cette requete qui demande déja une organisation.
[/quote]

en gros . TEMP_aevoie (premiere requete) est ordonnée et se classe abc123
et T_test (deuxieme requete avec temp_aevoie) est ordonée mais se classe en 123abc.
étrange je trouve. surtout avec des "order by" quasi similaire.

+ taz
0
sfel Messages postés 1640 Date d'inscription lundi 18 juin 2007 Statut Membre Dernière intervention 15 juillet 2009 430
25 juin 2007 à 15:33
moi je dis il faut demander a M. Karroum au grand maître des cours d'informatiques ^^

sinon serieusement, t'as essayé le forum de developez.com aussi?
https://access.developpez.com/
https://www.developpez.net/forums/f45/logiciels/microsoft-office/access/

bon courage ti alex pour la fin de ton stage, t'as plus que 2 semaines hein ^^
0
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
25 juin 2007 à 15:43
lol oui t'a vu je galere c'est fou, sinon oui g vu tes lien mais j'ai rien trouver de précis.
et c pas alex lool c ben :p
merci de ta reconaissance Ô grand codeur a petite mémoire :p
et oui me reste 2 semaine pr cloturé le sujet je c pas si jy arriverrai.

en fait si je résoud ce probleme de rangement dans le tableau c'est quasi terminé .

*cherche*
0
sfel Messages postés 1640 Date d'inscription lundi 18 juin 2007 Statut Membre Dernière intervention 15 juillet 2009 430
25 juin 2007 à 15:44
raa c'es tvrai, mais avec sa tagada team, a chaque fois je me goure, dsl benji ^^
0
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
26 juin 2007 à 08:29
bon j'ai toujours ce porbleme de classement .
je ne voit toujours pas ce qui peut influer sur le classement de mon tableau .
0
tazagaga Messages postés 11 Date d'inscription lundi 25 juin 2007 Statut Membre Dernière intervention 3 janvier 2008
27 juin 2007 à 10:31
je me demandait si en VBA il y avait un buffer, qu'il faille vidé ou pas .

avec une commande du genre comme en c: le FFLUSH pour vidé les donnée temporaire d'une constante.

car en fait quand j'execute le programe X foisil me donne pas toujours le meme ordre.
parfois il me donne le bon ordre et parfois des mauvais (identique ou différent)
c'est vraiment aléatoire.

need help merci d'avance.
0
Hello,

Je me dis que le problème est sans doute dans le code VBA. Oserait-on avoir une partie de ton code pour analyser?

John Koenig
0