Access 2003
Résolu/Fermé
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
-
3 oct. 2008 à 10:07
GuyBa Messages postés 9 Date d'inscription jeudi 2 octobre 2008 Statut Membre Dernière intervention 30 octobre 2008 - 30 oct. 2008 à 22:37
GuyBa Messages postés 9 Date d'inscription jeudi 2 octobre 2008 Statut Membre Dernière intervention 30 octobre 2008 - 30 oct. 2008 à 22:37
A voir également:
- Access 2003
- Office 2003 - Télécharger - Bureautique
- Access appdata - Guide
- Acer quick access - Forum Logiciels
- Exemple base de données access à télécharger gratuit ✓ - Forum Logiciels
- Acer Quick Access - affichage CapsLock, VerrNum - Forum logiciel systeme
14 réponses
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
26 oct. 2008 à 22:11
26 oct. 2008 à 22:11
Bonjour LatelyGeek,
Me voici de retour avec une question :
Voici la commandes que j'ai créer en [Procédure événementielle] "après MAJ" pour le champ "PP".
___________________________________________________________
Private Sub PP_AfterUpdate()
Me!PP = [DE] + [DE-TS] + [+20] + [+20-TS] + [PR] + [PR-TS] + [CV] + [CV-TS] _
+ [COUR] + [COUR-TS] + [AVE] + [AVE-TS] + [ENQ] + [ENQ-TS] + [ENC] + [ENC-TS] _
+ [TS] + [EPF] + [EPF-TS]
End Sub
____________________________________________________________
Mais cette commande ne donne pas le résultat escompté.
La mise à jour du champ "PP" ne se fait pas automatiquement. Il faut que je me positionne sur " PP " dans lequel je dois rentrer une valeur quelconque, par exp. 1, et lorsque je quitte le champ, la valeur inscrite dans un des champs, repris dans la commande, s'inscrit alors dans "PP".
En fait, j'aimerai que la valeur s'inscrive automatiquement dans "PP".
La commande pour les champs dans lesquels il ne peut y avoir de valeur, que dans un seul champ, fonctionne sans problème et avec la boîte de message c'est vraiment impeccable. Merci beaucoup pour la commande et encore merci de l'aide que tu m'apportes.
Je te souhaite une bonne journée ou une bonne nuit, Guy.
Me voici de retour avec une question :
Voici la commandes que j'ai créer en [Procédure événementielle] "après MAJ" pour le champ "PP".
___________________________________________________________
Private Sub PP_AfterUpdate()
Me!PP = [DE] + [DE-TS] + [+20] + [+20-TS] + [PR] + [PR-TS] + [CV] + [CV-TS] _
+ [COUR] + [COUR-TS] + [AVE] + [AVE-TS] + [ENQ] + [ENQ-TS] + [ENC] + [ENC-TS] _
+ [TS] + [EPF] + [EPF-TS]
End Sub
____________________________________________________________
Mais cette commande ne donne pas le résultat escompté.
La mise à jour du champ "PP" ne se fait pas automatiquement. Il faut que je me positionne sur " PP " dans lequel je dois rentrer une valeur quelconque, par exp. 1, et lorsque je quitte le champ, la valeur inscrite dans un des champs, repris dans la commande, s'inscrit alors dans "PP".
En fait, j'aimerai que la valeur s'inscrive automatiquement dans "PP".
La commande pour les champs dans lesquels il ne peut y avoir de valeur, que dans un seul champ, fonctionne sans problème et avec la boîte de message c'est vraiment impeccable. Merci beaucoup pour la commande et encore merci de l'aide que tu m'apportes.
Je te souhaite une bonne journée ou une bonne nuit, Guy.
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
27 oct. 2008 à 13:23
27 oct. 2008 à 13:23
Je comprends pas.:
Mais cette commande ne donne pas le résultat escompté.
La mise à jour du champ "PP" ne se fait pas automatiquement. Il faut que je me positionne sur " PP " dans lequel je dois rentrer une valeur quelconque, par exp. 1, et lorsque je quitte le champ, la valeur inscrite dans un des champs, repris dans la commande, s'inscrit alors dans "PP".
En fait, j'aimerai que la valeur s'inscrive automatiquement dans "PP".
Puisque tu tapes DANS le champ PP, que doit faire la commande, quand , pourquoi?????
Mais cette commande ne donne pas le résultat escompté.
La mise à jour du champ "PP" ne se fait pas automatiquement. Il faut que je me positionne sur " PP " dans lequel je dois rentrer une valeur quelconque, par exp. 1, et lorsque je quitte le champ, la valeur inscrite dans un des champs, repris dans la commande, s'inscrit alors dans "PP".
En fait, j'aimerai que la valeur s'inscrive automatiquement dans "PP".
Puisque tu tapes DANS le champ PP, que doit faire la commande, quand , pourquoi?????
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
28 oct. 2008 à 00:44
28 oct. 2008 à 00:44
Bonjour LatelyGeek,
Je vais essayer d’être plus explicite. C’est vrai ; on se comprend toujours très bien, mais se faire comprendre c’est autre chose.
Chaque champ « [DE] / [DE-TS] / /20 / /20-TS / [PR] / [PR-TS] / [CV] / [CV-TS] / [C/R] / [C/R-TS] / [AVE] / [AVE-TS] / [ENQ] / [ENQ-TS] / [ENC] / [ENC-TS] / [TS] / [EPF] / [EPF-TS] » de ce sous formulaire représente un « Type de contrat ». Une fiche ne peut contenir qu’un seul contrat.
La valeur inscrite dans un des champs représente la valeur du contrat, qui doit apparaître aussi dans le champ « PP ».
J’aimerai pouvoir inscrire la valeur du contrat, qu’une seule fois, en l’entrant dans un des champs « Type de contrat » et qu’elle s’inscrive automatiquement dans le champ « PP ». Ceci pour éviter des erreurs, mais aussi pour faire des tris de valeur pour l’ensemble des contrats.
Avec la formule que tu m’as renseigné, pour que la valeur, inscrite dans un des champs « Type de contrat », s’inscrive dans le champ « PP », je suis obligé de placer le curseur dans le champ « PP » d’entrer une valeur quelconque et quand je quitte le champ, c’est la valeur inscrite dans le champ « Type de contrat » qui apparaît. La finalité est bonne, c’est bien ce que je désire, mais j’aimerai que cette valeur s’inscrive automatiquement dès que je quitte le champ « Type de contrat » et de ne pas être obligé d’aller dans le champ « PP ». En réalité le champ "PP" est le doublon de la valeur inscrite dans un des champs "Type de contrat"
J'espère avoir été assez explicite et te souhaite une bonne journée.
Guy
Je vais essayer d’être plus explicite. C’est vrai ; on se comprend toujours très bien, mais se faire comprendre c’est autre chose.
Chaque champ « [DE] / [DE-TS] / /20 / /20-TS / [PR] / [PR-TS] / [CV] / [CV-TS] / [C/R] / [C/R-TS] / [AVE] / [AVE-TS] / [ENQ] / [ENQ-TS] / [ENC] / [ENC-TS] / [TS] / [EPF] / [EPF-TS] » de ce sous formulaire représente un « Type de contrat ». Une fiche ne peut contenir qu’un seul contrat.
La valeur inscrite dans un des champs représente la valeur du contrat, qui doit apparaître aussi dans le champ « PP ».
J’aimerai pouvoir inscrire la valeur du contrat, qu’une seule fois, en l’entrant dans un des champs « Type de contrat » et qu’elle s’inscrive automatiquement dans le champ « PP ». Ceci pour éviter des erreurs, mais aussi pour faire des tris de valeur pour l’ensemble des contrats.
Avec la formule que tu m’as renseigné, pour que la valeur, inscrite dans un des champs « Type de contrat », s’inscrive dans le champ « PP », je suis obligé de placer le curseur dans le champ « PP » d’entrer une valeur quelconque et quand je quitte le champ, c’est la valeur inscrite dans le champ « Type de contrat » qui apparaît. La finalité est bonne, c’est bien ce que je désire, mais j’aimerai que cette valeur s’inscrive automatiquement dès que je quitte le champ « Type de contrat » et de ne pas être obligé d’aller dans le champ « PP ». En réalité le champ "PP" est le doublon de la valeur inscrite dans un des champs "Type de contrat"
J'espère avoir été assez explicite et te souhaite une bonne journée.
Guy
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
28 oct. 2008 à 14:02
28 oct. 2008 à 14:02
C'est nettement mieux. Et en plus, c'est très simple.
Ta procédure
Private Sub XX_AfterUpdate()
Me!PP = [DE] + [DE-TS] + [+20] + [+20-TS] + [PR] + [PR-TS] + [CV] + [CV-TS] _
+ [COUR] + [COUR-TS] + [AVE] + [AVE-TS] + [ENQ] + [ENQ-TS] + [ENC] + [ENC-TS] _
+ [TS] + [EPF] + [EPF-TS]
End Sub
doit être écrite pour CHACUN des champs types de contrat. (DE, DE-TS etc)
Ta procédure
Private Sub XX_AfterUpdate()
Me!PP = [DE] + [DE-TS] + [+20] + [+20-TS] + [PR] + [PR-TS] + [CV] + [CV-TS] _
+ [COUR] + [COUR-TS] + [AVE] + [AVE-TS] + [ENQ] + [ENQ-TS] + [ENC] + [ENC-TS] _
+ [TS] + [EPF] + [EPF-TS]
End Sub
doit être écrite pour CHACUN des champs types de contrat. (DE, DE-TS etc)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
28 oct. 2008 à 21:48
28 oct. 2008 à 21:48
LatelyGeek,
Et bien me voici au bout du problème. Le tout fonctionne comme sur des roulettes et c’est vraiment avec grand plaisir que je salue tes connaissances. Il me reste à bien comprendre ce qui se passe lors de ces deux commandes et surtout pourquoi la commande « après MàJ » se fait avant directement ? Il me semblait que la « MàJ » se fessait quand on quittait la fiche. Bon, j’ai encore beaucoup de chose à connaître pour employer et comprendre Access correctement.
LatelyGeek il me reste à te remercier encore une fois et à déclarer mon problème résolu.
Bonne soirée ou bonne journée, Guy
Et bien me voici au bout du problème. Le tout fonctionne comme sur des roulettes et c’est vraiment avec grand plaisir que je salue tes connaissances. Il me reste à bien comprendre ce qui se passe lors de ces deux commandes et surtout pourquoi la commande « après MàJ » se fait avant directement ? Il me semblait que la « MàJ » se fessait quand on quittait la fiche. Bon, j’ai encore beaucoup de chose à connaître pour employer et comprendre Access correctement.
LatelyGeek il me reste à te remercier encore une fois et à déclarer mon problème résolu.
Bonne soirée ou bonne journée, Guy
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
29 oct. 2008 à 10:23
29 oct. 2008 à 10:23
C'est toute la subtilité, puisqu'il ne faut pas confondre la MAJ de la valeur du champ, et l'écriture sur le disque qui se fait que quand tu quittes cet enregistrement.
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
29 oct. 2008 à 21:52
29 oct. 2008 à 21:52
LatelyGeek,
Si je comprends bien en Visual Basic, “AfterUpdate” commande une MàJ quand on quitte un enregistrement, alors que “BeforeUpdate” représente la MàJ d’un champ et se fait directement.
Ce qui m’a étonné, c’est qu’il faut donner la commande de MàJ de PP dans les champs « Type de contrat ».
Chacun de ces champs renvois un calcul dans PP.
Pourquoi n’est-ce pas le champ PP qui ferait le calcul de la somme des champs Type de contrat ?
Bon, mais faut pas que j’abuse de ce cours particulier… autrement tu n’en finirais pas.
Bonne journée ou soirée à toi.
Guy
Si je comprends bien en Visual Basic, “AfterUpdate” commande une MàJ quand on quitte un enregistrement, alors que “BeforeUpdate” représente la MàJ d’un champ et se fait directement.
Ce qui m’a étonné, c’est qu’il faut donner la commande de MàJ de PP dans les champs « Type de contrat ».
Chacun de ces champs renvois un calcul dans PP.
Pourquoi n’est-ce pas le champ PP qui ferait le calcul de la somme des champs Type de contrat ?
Bon, mais faut pas que j’abuse de ce cours particulier… autrement tu n’en finirais pas.
Bonne journée ou soirée à toi.
Guy
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
30 oct. 2008 à 10:38
30 oct. 2008 à 10:38
Le champ "type de contrat" renvoit la somme dans PP, qui recoit la valeur, dés que l'on quitte le champ "Type de valeur". Je pense que c'est cela. Si je ne me trompe pas on peut dire que la nuit porte conseil.
Note : je ne connais rien à l'anglais, ce qui me pose beaucoup de problèmes et explique ceratines questions.
Guy
Note : je ne connais rien à l'anglais, ce qui me pose beaucoup de problèmes et explique ceratines questions.
Guy
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
30 oct. 2008 à 17:37
30 oct. 2008 à 17:37
Pourquoi n’est-ce pas le champ PP qui ferait le calcul de la somme des champs Type de contrat ?
Parce que le calcul se ferait à l'écran, mais ne s'écrirait pas dans la table...
Parce que le calcul se ferait à l'écran, mais ne s'écrirait pas dans la table...
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
30 oct. 2008 à 22:37
30 oct. 2008 à 22:37
Pourtant, j’ai écris :
« Avec la formule que tu m’as renseigné, pour que la valeur, inscrite dans un des champs « Type de contrat », s’inscrive dans le champ « PP », je suis obligé de placer le curseur dans le champ « PP » d’entrer une valeur quelconque et quand je quitte le champ, c’est la valeur inscrite dans le champ « Type de contrat » qui apparaît. La finalité est bonne, c’est bien ce que je désire »
Et là, c'était le champ PP qui avait reçu la commande. Il me semble que la valeur s’inscrit bien dans la table, dans ce cas, non ?
Bonne soirée
Guy
« Avec la formule que tu m’as renseigné, pour que la valeur, inscrite dans un des champs « Type de contrat », s’inscrive dans le champ « PP », je suis obligé de placer le curseur dans le champ « PP » d’entrer une valeur quelconque et quand je quitte le champ, c’est la valeur inscrite dans le champ « Type de contrat » qui apparaît. La finalité est bonne, c’est bien ce que je désire »
Et là, c'était le champ PP qui avait reçu la commande. Il me semble que la valeur s’inscrit bien dans la table, dans ce cas, non ?
Bonne soirée
Guy
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
3 oct. 2008 à 22:08
3 oct. 2008 à 22:08
Tu ne peux pas verrouiller les champs une fois que l'un d'entre aux a reçu une valeur, parce que tu ne pourrais plus rentrer de valeur pour ces champs dans les autres lignes du sous-formulaire.
Ce qu'on peut faire, c'est que sur la propriété Avant MAJ de chacun de ces champs, tu mettes un contrôle de la somme de l'ensemble, qui doit être à zéro:
If [DE] + [DE-TS] + [+20] + [+20-TS] + [CV] + [CV-TS] + ... + [TS] <>0 Then
MsgBox "Impossible de modifier cette valeur"
DoCmd.CancelEvent
SendKeys ("{Escape}")
End If
Ce qu'on peut faire, c'est que sur la propriété Avant MAJ de chacun de ces champs, tu mettes un contrôle de la somme de l'ensemble, qui doit être à zéro:
If [DE] + [DE-TS] + [+20] + [+20-TS] + [CV] + [CV-TS] + ... + [TS] <>0 Then
MsgBox "Impossible de modifier cette valeur"
DoCmd.CancelEvent
SendKeys ("{Escape}")
End If
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
4 oct. 2008 à 00:02
4 oct. 2008 à 00:02
Merci de ta réponse LatelyGeek,.
Il y une chose que je ne comprend pas :
« Tu ne peux pas verrouiller les champs une fois que l'un d'entre aux a reçu une valeur, parce que tu ne pourrais plus rentrer de valeur pour ces champs dans les autres lignes du sous-formulaire. »
C’est un des buts recherchés. Une fois que l’un de ces champs a reçu une valeur, on ne doit plus pouvoir changer la valeur des autres champs, qui par défaut à la valeur « 0 ».
Bien entendu, je vais essayer le code que tu me transmets. Si je comprends bien c’est en VB que je dois le créer. Je ne suis pas point dans ce domaine puisque je vais m’y mettre réellement pour la première fois. Mais avec les infos que tu donnes, je vais bien y parvenir. Jusqu’à présent je trouvais des solutions avec les macros. Mais, voilà qui m’intéresse beaucoup.
Pour finir, il reste à résoudre le moyen de faire apparaître la valeur inscrite dans un de ces champs, dans un autre champ, se trouvant sur le même sous-formulaire, nommé “PP”. Et, l’idéal pour toute sécurité serait que “PP” fasse la somme de tous les champs. Sa valeur devrait donc être égal à la valeur inscrite dans un des champs preuve que la règle est bien suivie.
La véritable utilité de “PP” est d’avoir un seul champ pour faire le total de l’ensemble des fiches dans divers tris.
Merci encore et bonne soirée ou bonne journée.
Il y une chose que je ne comprend pas :
« Tu ne peux pas verrouiller les champs une fois que l'un d'entre aux a reçu une valeur, parce que tu ne pourrais plus rentrer de valeur pour ces champs dans les autres lignes du sous-formulaire. »
C’est un des buts recherchés. Une fois que l’un de ces champs a reçu une valeur, on ne doit plus pouvoir changer la valeur des autres champs, qui par défaut à la valeur « 0 ».
Bien entendu, je vais essayer le code que tu me transmets. Si je comprends bien c’est en VB que je dois le créer. Je ne suis pas point dans ce domaine puisque je vais m’y mettre réellement pour la première fois. Mais avec les infos que tu donnes, je vais bien y parvenir. Jusqu’à présent je trouvais des solutions avec les macros. Mais, voilà qui m’intéresse beaucoup.
Pour finir, il reste à résoudre le moyen de faire apparaître la valeur inscrite dans un de ces champs, dans un autre champ, se trouvant sur le même sous-formulaire, nommé “PP”. Et, l’idéal pour toute sécurité serait que “PP” fasse la somme de tous les champs. Sa valeur devrait donc être égal à la valeur inscrite dans un des champs preuve que la règle est bien suivie.
La véritable utilité de “PP” est d’avoir un seul champ pour faire le total de l’ensemble des fiches dans divers tris.
Merci encore et bonne soirée ou bonne journée.
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
5 oct. 2008 à 23:01
5 oct. 2008 à 23:01
« Tu ne peux pas verrouiller les champs une fois que l'un d'entre aux a reçu une valeur, parce que tu ne pourrais plus rentrer de valeur pour ces champs dans les autres lignes du sous-formulaire. »
C’est un des buts recherchés. Une fois que l’un de ces champs a reçu une valeur, on ne doit plus pouvoir changer la valeur des autres champs, qui par défaut à la valeur « 0 ».
Sur TOUTES les lignes du sous-formulaire?
Et pour l'autre question, excuse, j'ai oublié de répondre.
Je suppose donc qu'il y a un champ PP dans la table et qu'il est présent dans le sous formulaire.
Tu crées un code dans la propriété Après MAJ de tous les divers champs dans le quel tu écris
Me! PP = [DE] + [DE-TS] + [+20] + [+20-TS] + [CV] + [CV-TS] + ... + [TS]
C’est un des buts recherchés. Une fois que l’un de ces champs a reçu une valeur, on ne doit plus pouvoir changer la valeur des autres champs, qui par défaut à la valeur « 0 ».
Sur TOUTES les lignes du sous-formulaire?
Et pour l'autre question, excuse, j'ai oublié de répondre.
Je suppose donc qu'il y a un champ PP dans la table et qu'il est présent dans le sous formulaire.
Tu crées un code dans la propriété Après MAJ de tous les divers champs dans le quel tu écris
Me! PP = [DE] + [DE-TS] + [+20] + [+20-TS] + [CV] + [CV-TS] + ... + [TS]
GuyBa
Messages postés
9
Date d'inscription
jeudi 2 octobre 2008
Statut
Membre
Dernière intervention
30 octobre 2008
6 oct. 2008 à 23:01
6 oct. 2008 à 23:01
Bonsoir LatelyGeek,
Effectivement, si je bloque TOUS les champs du sous formulaire c’est gênant, bien que ce soit le dernier champ qui sera rempli dans le dit sous-formulaire. Mais il faut prévoir de pouvoir faire des changements dans d’autres champs. Je ne pensais pas que l’on devait bloquer TOUS les champs, mais qu’on bloquait que ceux nommés, soit les 20 champs concernés.
Donc je reprends ta consigne première.
Il y a bien un champ PP dans la table. Merci pour ton information « Me! PP » que je n’ai trouvé nulle part, ni dans « Access 2003 de Micro Application ». Il y tellement de possibilités dans ce type de programmes qu’en même temps c’est merveilleux et effrayant.
Encore un grand merci et cela tombe bien, je pars jusqu'à la fin du mois, (sans connexion Internet) et vais avoir tout le temps pour régler ce petit problème. Je te dirai ce qu'il en est, dès mon retour.
Bonne journée ou nuit et encore MERCI.
Effectivement, si je bloque TOUS les champs du sous formulaire c’est gênant, bien que ce soit le dernier champ qui sera rempli dans le dit sous-formulaire. Mais il faut prévoir de pouvoir faire des changements dans d’autres champs. Je ne pensais pas que l’on devait bloquer TOUS les champs, mais qu’on bloquait que ceux nommés, soit les 20 champs concernés.
Donc je reprends ta consigne première.
Il y a bien un champ PP dans la table. Merci pour ton information « Me! PP » que je n’ai trouvé nulle part, ni dans « Access 2003 de Micro Application ». Il y tellement de possibilités dans ce type de programmes qu’en même temps c’est merveilleux et effrayant.
Encore un grand merci et cela tombe bien, je pars jusqu'à la fin du mois, (sans connexion Internet) et vais avoir tout le temps pour régler ce petit problème. Je te dirai ce qu'il en est, dès mon retour.
Bonne journée ou nuit et encore MERCI.