OVH Cloud OVH Cloud

MODE PAS A PAS

2 réponses
Avatar
joker
Bonjour,

J'ai un probl=E8me car j'ai =E9crit une macro VBA qui=20
fonctionne en mode pas =E0 pas mais qui ne fonctionne plus=20
en marche normale !

Pour info :
Access XP - WIN XP -=20
Intel Pentium 4 CPU 2.60GHz
5.59 GHz
512 MO de RAM.

Voici le principe de mon programme
Table A :=20
ID Fournisseur ; ID Produit
1 ; 1
2 ; 2
2 ; 3
3 ; 4

Cette table contenant une liste de nouveaux produit =E0=20
cr=E9er.=20

Table B=20
ID Fournisseur
1
4
5
Cette table contient la liste des fournisseurs connus en=20
base (dans mon exemple la table B ne contient pas les=20
fournisseurs 2 et 3, qui a deux produits dans la table A)

Table C
Fnsseur_TypeQry ; ID Fournisseur ; Pdt_TypeQry ;ID Produit

Cette table re=E7oit le r=E9sultat du traitement de ma macro.
Elle indique une liste d'action =E0 faire.
Si le fournisseur de la table A est retrouv=E9 dans la=20
table B alors Fnsseur_TypeQry =3D EXISTANT
S'il n'est pas la on v=E9rifie qu'il n'y a pas un=20
enregistrement de la table C correspondant pour ce=20
fournisseur. Si on en trouve un on met EXISTE, sinon=20
CREER.
Les produits sont toujours =E0 CREER

Voici ce que je devrait trouver comme r=E9sultar par=20
rapport a mon exemple :
EXISTE ; 1 ; CREER ; 1
CREER ; 2 ; CREER ; 2
EXISTE ; 2 ; CREER ; 3
CREER ; 3 ; CREER ; 4

Quand j'ex=E9cute mon programme en pas =E0 pas cela=20
fonctionne correctement. Lorsque je lance mon programme=20
normalement en cliquant sur le bouton, j'ai le r=E9sultat=20
suivant :
EXISTE ; 1 ; CREER ; 1
CREER ; 2 ; CREER ; 2
CREER ; 2 ; CREER ; 3
CREER ; 3 ; CREER ; 4

Comme si le programme n'avait pas pris en compte le 1er=20
CREER sur le fournisseur 2.

Je suis =E0 court de solutions, si vous pouviez m'aider...

2 réponses

Avatar
romainw
Intel Pentium 4 CPU 2.60GHz
5.59 GHz

ça c'est de l'O/C de roxxor !!! avec quoi tu refroidis ?
Avatar
romainw
sinon plus sérieusement, ça pourrait venir de ton proc :
si tu lances plusieurs procédures en même temps, y'a peut
etre des conflits, style les temps d'exécution sont trop
rapides. Essaie de mettre des pauses systeme avec des
timeout ou des boucles pour voir.
a+