Vb

nad -  
 nad -
coucou,
g dois faire une sorte de boucle dans mon code vb sur access
celle-ci doit servir à remplir les champs une fois être allé sur le bouton
cela doit affecter une date aux champs (ça serai rempli ds la table)qui sont à affichés sur le formulaire
g n c pas trop cmt faire
g essayé d faire avec une requête main non dc si vs avez des idées
elles st les bienvenues
A voir également:
  • Vb
  • Vb - Télécharger - Langages
  • Vb cable - Télécharger - Audio & Musique
  • Vb editor - Télécharger - Langages
  • Vb runtime - Télécharger - Divers Utilitaires
  • Vb express - Télécharger - Langages

38 réponses

teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
J'avoue aps avoir compris ce que tu cherches a faire exactement, tu pourrais detailler un peu?

.  .
\_/
0
nad
 
voila
en fait g un formulaire où g selectionne, par l'intermédiare d'un calendrier, une date puis ce formulaire m'ouvre un autre formulaire qui contient ttes les informations se rapportant aux dossiers ( ma base est une gestion de dossier) selon bien sûr le critère de date que g choisie avt
g v que affecter à ces dossiers une date qui me permet de valider leur envoie g v dc que ts les dossiers qui sont affichés dans mon formulaire aient ts la meme date ( g affecter la fonction now pr la date du jr) voila
g n'arrive pas à faire ma boucle, qd j'essaie ça m'enregistre seulement la date pour le premier dossier
g vs remercie
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
RHAAAAAAAAAAAAAAAAAAAAAA

Evites le langage SMS s'il te plait, on a pas de limite de caracteres ici (enfin si mais il faut deja avoir la forme pour l'atteindre :-) )

Bon tu las fait comment ta boucle? Tu utilises un recordset ou tu passes a travers de tous les controles a l'aide la collection?

Tu peux nous mettre le code? Ca donnera toujours une bonne base...
.  .
\_/
0
nad
 
pr les sms tant que c comprhensible !
les champs que g ds mon formulaire st ceux que g choisie ds la source du formulaire en question
dc ds le code g les récupère en faisant Me![ ]
sinon et bien le probleme c que si g met une requête ça n sera pas compatible
puis g n c pas ce que g dois affecter à mon compteur
c ts les dossiers affichés mais cmt le dire
voila mon pb
0
Castor Messages postés 17858 Date d'inscription   Statut Modérateur Dernière intervention   170
 
merci de lier http://www.commentcamarche.net/ccmguide/ccmcharte.php3

Il est également demandé aux utilisateurs de s'appliquer lors de la rédaction de leur message en évitant au possible les abréviations et d'en vérifier dans la mesure du possible l'orthographe.

.O  Sauvez-moi, mangez Mary :-D
(_)__
... Castor
0
WhiteFang Messages postés 2063 Date d'inscription   Statut Membre Dernière intervention   204 > Castor Messages postés 17858 Date d'inscription   Statut Modérateur Dernière intervention  
 
;-))

Merci, Castor !!

C'est vrai, j'ai vachement de mal à le lire, lui !!

Fô passer en multitâche ! Décodeur visuel, analyse et décompression en temps réel, puis réflexion !! Fouf !! Ca use la tête !!

;-))

Wild and Free
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Si tu fais pas d'effort pour que je t'aide je ne lis meme pas et je laisse tomber...

.  .
\_/
0
nad
 
g trouve que c'est exageré mais bon j'ai besoin d'aide donc je vais m'appliquer
je disais que j'ai un formulaire qui contient un planning et qui donc permet à l'utilisateur de choisir une date, cette date s'inscrit dans l'edit box du formulaire puis j'ai aussi un bouton qui permet d'ouvrir un autre formulaire
cet autre formulaire affiche les dossiers qui ont été commandés à cette date
voila
mon objectif c'est que je veux que pour chaque dossiers demandés à cette date je leur affecte une date qui celle de l'envoie des dossiers donc tous les dossiers qui seront affichés sur le formulaire auront le meme date . cette date n'apparait pas sur la formulaire
J'espère que c'est comprehensible !
0
WhiteFang Messages postés 2063 Date d'inscription   Statut Membre Dernière intervention   204 > nad
 
;-) Non non, c'était pas exagéré !!

Maintenant, ça devient un plaisir de te lire, et ça nous donne envie de t'aider, du moment que tu fais l'effort d'être bien clair, et de faire en sorte que l'on ne perde pas des plombes à décoder ton texte !!

Bon, je continue à lire et je te réponds...

Wild and Free
0

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

Posez votre question
beldyn Messages postés 188 Date d'inscription   Statut Membre Dernière intervention   19
 
Salut,
Perso, je comprends pas trop ton problème, apparement tu arrives à modifier la date pour le premier et pas les autres?
Si c ça, ton problème vient-il de ta boucle ou de la récupération des noms de champs?? Quel est l'objet que tu appelles EditBox?
Donne nous le code actuel de ta boucle, ça nous aidera à comprendre.
A+
0
nad
 
en fait c'est ma boucle que je n'arrive pas à faire
le premier formulaire puvre le deuxieme selon une date choisie dans le premier
dans mon deuxieme formulaire j'affiche tous les dossiers demandés à cette date
puis j'ai un bouton envoie qui doit me permettre d'affecter la date d'envoi à tous les dossiers qui sont affichés
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Tu as dis que ta boucle ne marchait pas...c'est quoi ta boucle?
Sinon je pense que le plus simple est sans doute une requete SQL suivie d'un refresh, autre solution, faire une boucle sur tous les controles de ta form (ca marche en VB, je ne sais pas si ca marche en VBA...puisque tu sembles etre en VBA...)

.  .
\_/
0
WhiteFang Messages postés 2063 Date d'inscription   Statut Membre Dernière intervention   204
 
;-))

Ca marche, en VBA, mais c'est chient !!

Surtout sous Acces !! Fô utiliser l'objet "containers"... Bref...

;-))

Wild and Free
0
nad
 
ma boucle c'était
for n=1 to n-1
Me![num]=now()
next n
voila mais ça m'affecter la date seulement pour le premier
sinon pour refresh comment fait on?
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Ben voila le probleme...

for i=1 to n-1
blabla
next i

Sinon tu changes ton n et tu lui affectes la valeur 1 des la premiere boucle et donc il n'ira pas plus loin...


.  .
\_/
0
nad > teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention  
 
et bien là il ne prend rien du tout, il affecte rien meme pas au premier
0
beldyn Messages postés 188 Date d'inscription   Statut Membre Dernière intervention   19
 
Re,
Bien vu Teebo.
En outre, Num n'est pas incrémenté, donc normal que tu ne fasses que le premier.
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Un conseil, fouille dans les recordsets, et passe non pas de i a i+1 mais d'un recordset a l'autre...
La il est toujours sur le premier quoique tu fasses...

.  .
\_/
0
nad
 
oui mais comment vais je faire ?
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Tu fais ta ligne de commande pour le premier recordset puis tu avances au suivant puis tu effectues ta ligne de commande...etc...

.  .
\_/
0
nad
 
Ok merci mais dès que j'execute et bien il n'arrive pas à lire le debut de la boucle
j'ai effectué un test et c'est juste au debut donc dans le for que ça bloque.
0
beldyn Messages postés 188 Date d'inscription   Statut Membre Dernière intervention   19
 
re,
Montre-nous ton code maintenant que tu l'a modifié
0
nad
 
j'essaie avec la methode findrecord

DoCmd.FindRecord num_LC, , True, , True

If IsNull(Me![dateréalisation]) Then

Me![dateréalisation] = Now()

Else
'MsgBox "vous avez déjà envoyer cette commande"
End If

DoCmd.FindNext

mais je n'ai pas fait de boucle car je ne sais pas comment je pourai l'écrire avec cette méthode
en fait il faudrai que la methode findrecord englobe ma condition et se termine par find next
merci !
0
teebo Messages postés 33491 Date d'inscription   Statut Modérateur Dernière intervention   1 793
 
Il faut utiliser une boucle while!
(regarde la syntaxe dans l'aide...)

DoCmd.FindRecord num_LC, , True, , True

While Me![MaCle]<>nothing
If IsNull(Me![dateréalisation]) Then
Me![dateréalisation] = Now()
Else
'MsgBox "vous avez déjà envoyer cette commande"
End If
DoCmd.FindNext
Wend

Un truc comme ca...



.  .
\_/
0
nad
 
merci, la syntaxe est correcte
mais il y a un probleme au debut avec
DoCmd.FindRecord num_LC, , True, , True
il y a une erreur qui dit que le nom du formulaire n'est pas correcte
mais je n'ai rien changé j'ai juste ajouté la boucle avec while
c'est très bizard
donc je me dis que peut être il faut rajouter quelque chose dans la premiere ligne
0
WhiteFang Messages postés 2063 Date d'inscription   Statut Membre Dernière intervention   204
 
;-))

Bon, si j'ai bien tout pompris !!

1) Dans un formulaire, un choix est fait dans un contrôle Calendar, qui lui même, engendre un sous-formulaire avec comme champ père la date choisie ??

2) La dessus, il faut remplir tous les champs masqués (date), des dossiers sélectionnés via le champ père, par la date choisie dans le contrôle Calendar ??

Me suis-trompais-je ??
---------------------------------------------------------------------------
Des petits détails, vite fait, tout de suite :

1) Seuls un MoveLast/MoveFirst vont alimenter le RecordCount, donc, ce sont des opérations à effectuer avant même d'entâmer la boucle....

2) Globalement, je ne pense pas qu'il y ai besoin d'un sous-formulaire pour ça, il suffit de créer une requête dynamique, puis de faire la boucle sur ce RecordSet...

3) Inutile de se faire chier avec les "[" et les "(", Access est un peu "hors norme" question intégration VB/VBA, et un bon conseil, c'est (on ne le peux pas toujours) de rester dans les clous de VB, et donc, une commande que je pourrais traduire, c'est :

Me.dateréalisation= Now()

4) Pas de caractères qui font appel à la page de 128 à 255 de la table ASCII dans les noms d'objets....

Me.DateRealisation = Now() (voilà une belle écriture)

5) La norme/règle/Convention d'écriture de code : Chaque lettre significative d'un mot doit être en majuscule.... Tu verras, cela t'éviteras bien des déboires avec les éditeurs (VB/VBA)...
-------------------------------------------------------------------------
Bon, dis-moi déjà si j'ai bien ciblé ton problème, après.... On passe en mode assistance active !! ;-))

Wild and Free
0
nad
 
ce n'est pas un sous formulaire, on l'ouvre à l'aide d'un bouton
puis à l'ouverture il contient les dossiers selectionnés par la date (du premier formulaire)
donc je veux leur affecter une date qui est celle de l'envoie mais je veux l'affecter à tous d'où mon probleme
j'espère que t'as compris
0
WhiteFang Messages postés 2063 Date d'inscription   Statut Membre Dernière intervention   204
 
Donc, le formulaire que tu ouvres et basé sur une requête paramétrée ?

Wild and Free
0
nad
 
non je tire mes données du formulaire par sa source
et j'ai dans le bouton du premier formulaire un lien avec la date pour que quand on ouvre le deuxieme on est les dossiers consernant la date
0
WhiteFang Messages postés 2063 Date d'inscription   Statut Membre Dernière intervention   204
 
?? Là, je suis largué !!

Tu as, dans le bouton du premier formulaire, un lien avec la date ?

Tu as fait comment ? Tu as utilisé la propriété .Tag du bouton ??

Là, je suis de plus en plus à l'ouest.... Plus ça va, moins je comprends... Tu tires tes données par la source du formulaire ?

Où j'ai le cerval qui gèle, où c'est la vieillerie, mais je ne te suis pas ???? Je pige 0....

Qui comprends ? Teebo ? A l'aide !! (il est tard, je me donne des excuses...)

Wild and Free
0