Conditions simultanées sur code access
Résolu/Fermé
unseen
Messages postés
56
Date d'inscription
mercredi 17 décembre 2008
Statut
Membre
Dernière intervention
25 avril 2013
-
17 déc. 2008 à 13:54
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 - 3 janv. 2009 à 13:35
LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 - 3 janv. 2009 à 13:35
A voir également:
- Conditions simultanées sur code access
- Code asci - Guide
- Code puk bloqué - Guide
- Code telephone oublié - Guide
- Code activation windows 10 - Guide
- Code gta 4 ps4 - Guide
11 réponses
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
17 déc. 2008 à 15:30
17 déc. 2008 à 15:30
Tu mets dans la zone "Sur réception focus" de la zone Num_plomb un code comme ça:
If me!Conditionnement.Value="Conteneurisé" and me!Plein=False and me!Vide=False then msgbox "Le conteneur est-il vide ou plein?"
If me!Conditionnement.Value="Conteneurisé" and me!Plein=False and me!Vide=False then msgbox "Le conteneur est-il vide ou plein?"
Tu es un ange. ton code est simple et propre
je doutais du fait que l'on pouvait utiliser 2 fois le "and" moins encore sur reception focus
Anyway, cela me ferait plaisir d'avoir ton mail pour plus d'échange
je doutais du fait que l'on pouvait utiliser 2 fois le "and" moins encore sur reception focus
Anyway, cela me ferait plaisir d'avoir ton mail pour plus d'échange
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
17 déc. 2008 à 21:35
17 déc. 2008 à 21:35
Actually, mon mail est dans mon profil....
Bonjour à nouveau LatelyGeek
j'ai encore des pépins, now avec des requetes
j'ai un table nommée "bordereau" comportant des champs :
- nom_chargeur
- date_bordereau
- import (oui/non)
- export (oui/non)
- poids_declare (numérique)
j'ai fait un regroupement sur chargeur et une somme sur poids_declare afin de déterminer d'une part le trafic import par chargeur et d'autre part le trafic global par chargeur. j'ai pris le soin de mettre le mois et l'année en critères car je fais un bilan mensuel.
j'aimerais maintenant avoir le trafic global (trafic import + trafic export) à partir de ces deux requetes toujours avec le critère " mois" et " année". j'avoue que j'ai des difficultés à le réussir et quand je le réussi il ya des doublons. Par exemple l'ordinateur me demande 2 fois l'année et le mois.
j'aimerais que tu me proposes quelque chose de simple ,si possible pas en sql.
je précise que le meme chargeur peut être aujourd'hui à l'import et demain à l'export
Merci d'avance
j'ai encore des pépins, now avec des requetes
j'ai un table nommée "bordereau" comportant des champs :
- nom_chargeur
- date_bordereau
- import (oui/non)
- export (oui/non)
- poids_declare (numérique)
j'ai fait un regroupement sur chargeur et une somme sur poids_declare afin de déterminer d'une part le trafic import par chargeur et d'autre part le trafic global par chargeur. j'ai pris le soin de mettre le mois et l'année en critères car je fais un bilan mensuel.
j'aimerais maintenant avoir le trafic global (trafic import + trafic export) à partir de ces deux requetes toujours avec le critère " mois" et " année". j'avoue que j'ai des difficultés à le réussir et quand je le réussi il ya des doublons. Par exemple l'ordinateur me demande 2 fois l'année et le mois.
j'aimerais que tu me proposes quelque chose de simple ,si possible pas en sql.
je précise que le meme chargeur peut être aujourd'hui à l'import et demain à l'export
Merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
18 déc. 2008 à 19:03
18 déc. 2008 à 19:03
Si tu ne veux pas de SQL, passe par deux requêtes. Une première avec les critères sur le mois et l'année, et une pour faire la somme. Sinon Access en quelque sorte réexécute la requête au moment de faire la somme.
Tu gardes ta requête initiale sans faire la somme, et ta deuxième requête doit être basée sur la première, tu n'as donc pas besoin de remettre les critères, tu totalises juste les valeurs.
Tu gardes ta requête initiale sans faire la somme, et ta deuxième requête doit être basée sur la première, tu n'as donc pas besoin de remettre les critères, tu totalises juste les valeurs.
Oui ce que tu me proposes marche mais j'ai omis de préciser que je veux que ma requête affiche à la fois : le total import ; le total export; le total global par chargeur et selon les critères mois et année. En voici une esquisse:
nom_chargeur total import total export total gobal [Mois] [Année]
Au fait, j'aurais pu le faire facilement si plutot que de privilegier des cases à cocher, je faisais deux champs(quantité importé, quantité exporté) mais mon problème est que la base est très avancé avec de petits codes çà et là . A défaut de pouvoir m'aider en mode création, je prendrais le sql que tu me proposeras.
Merci pour ton aide
nom_chargeur total import total export total gobal [Mois] [Année]
Au fait, j'aurais pu le faire facilement si plutot que de privilegier des cases à cocher, je faisais deux champs(quantité importé, quantité exporté) mais mon problème est que la base est très avancé avec de petits codes çà et là . A défaut de pouvoir m'aider en mode création, je prendrais le sql que tu me proposeras.
Merci pour ton aide
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
19 déc. 2008 à 20:58
19 déc. 2008 à 20:58
Toujours pas besoin de SQL, ce que je t'ai donné jusqu'ici marcherait.
Normalement, tu devrais obtenir dans la première requête:
NomChargeur - Import - Export - Mois - Année (Tu utilises les fonctions Mois et Année pour extraire la stae, et tu mets un critère dessus)
Et dans la deuxième, tu mets:
NomChargeur - Import - Export - Import+Export - Mois - Année, tu mets un regroupement sur le chargeur, le mois et l'année et tu fais la somme des autres champs.
Normalement, tu devrais obtenir dans la première requête:
NomChargeur - Import - Export - Mois - Année (Tu utilises les fonctions Mois et Année pour extraire la stae, et tu mets un critère dessus)
Et dans la deuxième, tu mets:
NomChargeur - Import - Export - Import+Export - Mois - Année, tu mets un regroupement sur le chargeur, le mois et l'année et tu fais la somme des autres champs.
Bonjour l'ami
je pense que "you got me wrong". Ce n'est pas qu'il ait deux champs pour le poids_declare non ! pas du tout.
j'ai un seul champ poids_declare. lorsqu'arrive le bordereau je mets le nom du chargeur, la date, je coche soit import ou export et je mets le poids. donc si je coche "import"c'est dire que la quantité inscrite dans "poids_declare" est un quantité importée par le chargeur. si je coche export c'est dire que la quantité inscrite dans "poids_declare" est un quantité exportée.
Maintenant, il arrive que dans le mois un même chargeur fasse des importations à des dates précises du mois et des exportations à d'autres dates indiquées du mois.
je voudrais faire un bilan mensuel:
Pour un chargeur prit dans le mois, je voudrais connaitre la quantité qu'il a importé, la quantité qu'il a exportée, et enfin la quantité totale.
je pense bien que ce qui t'échappe c'est que j'ai des cases à cocher qui déterminent la quantité.
Mon idée à moi c'est de faire :
- first, une requete: nom_chargeur - import (=oui) - IMPORT:poids_declare *je détermine la quantité importée ***
- second, une requete: nom_chargeur - export (=oui) - EXPORT:poids_declare ***je détermine qtité exportée**
- thrid, une requete avec les deux précédentes:
nom_chargeur (table ou requete) - IMPORT - EXPORT - IMPORT + EXPORT- MOIS- ANNEE et je fais un regroupement.
j'avoue que j'y réfléchis encore....tu as, je pense tous les détails now. Help me please.
je pense que "you got me wrong". Ce n'est pas qu'il ait deux champs pour le poids_declare non ! pas du tout.
j'ai un seul champ poids_declare. lorsqu'arrive le bordereau je mets le nom du chargeur, la date, je coche soit import ou export et je mets le poids. donc si je coche "import"c'est dire que la quantité inscrite dans "poids_declare" est un quantité importée par le chargeur. si je coche export c'est dire que la quantité inscrite dans "poids_declare" est un quantité exportée.
Maintenant, il arrive que dans le mois un même chargeur fasse des importations à des dates précises du mois et des exportations à d'autres dates indiquées du mois.
je voudrais faire un bilan mensuel:
Pour un chargeur prit dans le mois, je voudrais connaitre la quantité qu'il a importé, la quantité qu'il a exportée, et enfin la quantité totale.
je pense bien que ce qui t'échappe c'est que j'ai des cases à cocher qui déterminent la quantité.
Mon idée à moi c'est de faire :
- first, une requete: nom_chargeur - import (=oui) - IMPORT:poids_declare *je détermine la quantité importée ***
- second, une requete: nom_chargeur - export (=oui) - EXPORT:poids_declare ***je détermine qtité exportée**
- thrid, une requete avec les deux précédentes:
nom_chargeur (table ou requete) - IMPORT - EXPORT - IMPORT + EXPORT- MOIS- ANNEE et je fais un regroupement.
j'avoue que j'y réfléchis encore....tu as, je pense tous les détails now. Help me please.
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
23 déc. 2008 à 20:06
23 déc. 2008 à 20:06
Tu peux faire une seule requête à la place des deux premières:
Import:VraiFaux(Import=Oui;PoidsDéclaré;0)
Export:VraiFaux(Export=Oui;PoidsDéclaré;0)
Les deux dans la même requête.
Import:VraiFaux(Import=Oui;PoidsDéclaré;0)
Export:VraiFaux(Export=Oui;PoidsDéclaré;0)
Les deux dans la même requête.
unseen
Messages postés
56
Date d'inscription
mercredi 17 décembre 2008
Statut
Membre
Dernière intervention
25 avril 2013
24 déc. 2008 à 10:05
24 déc. 2008 à 10:05
Merci, l'ami ça marche
Désolé te t'avoir tant importuné. je t'informes de l'évolution de ma base
Merci pour tout.
Désolé te t'avoir tant importuné. je t'informes de l'évolution de ma base
Merci pour tout.
unseen
Messages postés
56
Date d'inscription
mercredi 17 décembre 2008
Statut
Membre
Dernière intervention
25 avril 2013
24 déc. 2008 à 18:39
24 déc. 2008 à 18:39
Bonsoir latelyGeek
juste une petite curiosité. j'ai crée une liste déroulante qui contient une liste de valeur. dans les propriétés ,j'ai déjà fait des spécifications. (se limiter à la liste =non et auto étendre=oui).
j'aimerais savoir s'il ya une astuce qui permet d'ajouter automatiquement mes nouvelles valeurs dans ma liste déroulante.je veux dire les faire apparaitre dans l'ascenceur.
Si oui, montre moi l'astuce l'ami.
juste une petite curiosité. j'ai crée une liste déroulante qui contient une liste de valeur. dans les propriétés ,j'ai déjà fait des spécifications. (se limiter à la liste =non et auto étendre=oui).
j'aimerais savoir s'il ya une astuce qui permet d'ajouter automatiquement mes nouvelles valeurs dans ma liste déroulante.je veux dire les faire apparaitre dans l'ascenceur.
Si oui, montre moi l'astuce l'ami.
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
25 déc. 2008 à 18:37
25 déc. 2008 à 18:37
Si cette liste alimente un champ de ta table, tu peux en fait alimenter la liste à l'aide d'une requête basée sur la table, c'est ce que je fais généralement.
Par exemple si je veux rentrer des clients dans une base et pouvoir utiliser les noms des villes de clients déjà existants, je base la liste déroulante du champ Ville de la table Clients sur une requête et non pas une liste de valeurs.
Cette requête ira lire le champ Ville de la table elle-même, en faisant un regroupement pour ne pas retrouver 20 fois le même nom de ville.
Tu me suis?
Par exemple si je veux rentrer des clients dans une base et pouvoir utiliser les noms des villes de clients déjà existants, je base la liste déroulante du champ Ville de la table Clients sur une requête et non pas une liste de valeurs.
Cette requête ira lire le champ Ville de la table elle-même, en faisant un regroupement pour ne pas retrouver 20 fois le même nom de ville.
Tu me suis?
unseen
Messages postés
56
Date d'inscription
mercredi 17 décembre 2008
Statut
Membre
Dernière intervention
25 avril 2013
26 déc. 2008 à 09:26
26 déc. 2008 à 09:26
Bonjour LatelyGeek
je te suis, c'est cool et ça marche.
un autre question:
Comme je te l'avais dit dans ma base, j'ai deux champs à cocher (import, export)
j'ai écrit un code sur l'évènement after_update de sorte qu'on ne puisse cocher les deux cases à la fois.
code import: if import.value =true then export.locked=true else export.locked=false end if
code export: if export.value=true then import.locked=true...
j'ai pas vérrouillé au préalable les champs "import" et "export" du fait des possibilités de modifications.
le code marche sans problème lorsque je fais un nouveau enregistrement. mais lorsque je consulte les enregistrements précédents, je constate qu'il est possible de cocher les deux cases et cela me pertube énormement.
est ce l'emplacement du code qui est problématique ou as tu une meilleure solution?
ailleurs j'ai fait un code ce meme type (ie after_update) :
if conditionnement ="conteneur" then type_iso.locked=true
je constate que là encore pour faire des modifications sur les enregistrements passés. il me faut toujours venir mettre à jour le champ conditionnement avant de modifier le type_iso.
Merci de m'aider à résoudre mon problème.
je te suis, c'est cool et ça marche.
un autre question:
Comme je te l'avais dit dans ma base, j'ai deux champs à cocher (import, export)
j'ai écrit un code sur l'évènement after_update de sorte qu'on ne puisse cocher les deux cases à la fois.
code import: if import.value =true then export.locked=true else export.locked=false end if
code export: if export.value=true then import.locked=true...
j'ai pas vérrouillé au préalable les champs "import" et "export" du fait des possibilités de modifications.
le code marche sans problème lorsque je fais un nouveau enregistrement. mais lorsque je consulte les enregistrements précédents, je constate qu'il est possible de cocher les deux cases et cela me pertube énormement.
est ce l'emplacement du code qui est problématique ou as tu une meilleure solution?
ailleurs j'ai fait un code ce meme type (ie after_update) :
if conditionnement ="conteneur" then type_iso.locked=true
je constate que là encore pour faire des modifications sur les enregistrements passés. il me faut toujours venir mettre à jour le champ conditionnement avant de modifier le type_iso.
Merci de m'aider à résoudre mon problème.
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
2 janv. 2009 à 22:20
2 janv. 2009 à 22:20
Ca ne suffirait pas de faire:
code import: if import.value =true then export.value=false et vice versa?
(Tu peux tout mettre sur la même ligne sans end if puisqu'il n'y a pas de else)
Ca marcherait pour les anciens comme pour les nouveaux.
code import: if import.value =true then export.value=false et vice versa?
(Tu peux tout mettre sur la même ligne sans end if puisqu'il n'y a pas de else)
Ca marcherait pour les anciens comme pour les nouveaux.
unseen
Messages postés
56
Date d'inscription
mercredi 17 décembre 2008
Statut
Membre
Dernière intervention
25 avril 2013
3 janv. 2009 à 10:46
3 janv. 2009 à 10:46
Bonne et heureuse année à toi LatelyGeek, merci pour des nombreuses aides de 2008
Encore une aide en 2009, si tu me le permets :
j'ai mon champ "conditionnement" en liste déroulante qui contient: (conteneurisé;conventionnel)
selon le conditionnement j'ai des champs qui doivent se verrouillés pour éviter les saisies
j'ai écrit un code after_update :
if conditionnement = "conteneurisé" then
num_conteneur.locked=false
num_plomb.locked =false
else
num_conteneur.locked=true
num_plomb.locked =true
end if
le code marche lorsque je fais un nouveau enregistrement mais lors d'une modification il me faut toujours dérouler et sélectionner "conteneurisé" avant de changer les données et cela quand bien même le champ conditionnement contiendrait le texte "conteneurisé".la réaction de l'ordi est normal car les champs "num_conteneur" et "num_plomb" sont vérrouillés à l'avance.
moi je voudrais pouvoir modifier directement mes données une fois que le champ contient le libellé "conteneurisé"
j'aimerais savoir si c'est le code qui est mal écrit. si oui propose moi une solution.
Encore une aide en 2009, si tu me le permets :
j'ai mon champ "conditionnement" en liste déroulante qui contient: (conteneurisé;conventionnel)
selon le conditionnement j'ai des champs qui doivent se verrouillés pour éviter les saisies
j'ai écrit un code after_update :
if conditionnement = "conteneurisé" then
num_conteneur.locked=false
num_plomb.locked =false
else
num_conteneur.locked=true
num_plomb.locked =true
end if
le code marche lorsque je fais un nouveau enregistrement mais lors d'une modification il me faut toujours dérouler et sélectionner "conteneurisé" avant de changer les données et cela quand bien même le champ conditionnement contiendrait le texte "conteneurisé".la réaction de l'ordi est normal car les champs "num_conteneur" et "num_plomb" sont vérrouillés à l'avance.
moi je voudrais pouvoir modifier directement mes données une fois que le champ contient le libellé "conteneurisé"
j'aimerais savoir si c'est le code qui est mal écrit. si oui propose moi une solution.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
>
unseen
Messages postés
56
Date d'inscription
mercredi 17 décembre 2008
Statut
Membre
Dernière intervention
25 avril 2013
3 janv. 2009 à 12:56
3 janv. 2009 à 12:56
Bonjour,
Excusez-moi, je me retire.
Bonne chance.
Excusez-moi, je me retire.
Bonne chance.
Le Pingou
Messages postés
12187
Date d'inscription
mercredi 11 août 2004
Statut
Contributeur
Dernière intervention
14 novembre 2024
1 449
2 janv. 2009 à 22:48
2 janv. 2009 à 22:48
Bonsoir,
Ne serait-il pas plus simple de faire comme proposé ici :http://www.commentcamarche.net/forum/affich 10213381 aide pour evenements access?#1
Au passage, Bonne Année, LatelyGeek
Ne serait-il pas plus simple de faire comme proposé ici :http://www.commentcamarche.net/forum/affich 10213381 aide pour evenements access?#1
Au passage, Bonne Année, LatelyGeek
LatelyGeek
Messages postés
1758
Date d'inscription
vendredi 4 janvier 2008
Statut
Membre
Dernière intervention
5 janvier 2023
550
3 janv. 2009 à 13:35
3 janv. 2009 à 13:35
A ce moment là, il faut que tu mettes ce code dans la propriété Sur Activation du formulaire. Ca évaluera le contenu u champ Conditionnement à chaque changement d'enregistrement.
Ca ralentit un tout petit peu le fonctionnement, mais ça se justifie.
Ca ralentit un tout petit peu le fonctionnement, mais ça se justifie.