IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Gestion de champ nul [AC-2013]


Sujet :

Access

  1. #1
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut Gestion de champ nul
    Bonsoir membres du forum,
    Pourriez vous m'aider à gérer le nul de ma zone de texte Txt_MontantNetAPartager
    qui reçoit la fonction suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =F_RamenantMontantNetAPartager([ID_FondatEMS];[lst_NumMontantAPartagerFrm_TblMembreFamilleEMS])
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
     
    'Fonction Ramenant le MontantNetAPartager
    'Nz([Champ A]; 0)
    'Nz(varFreight, "No Freight Charge")
    Public Function F_RamenantMontantNetAPartager(NumPa As Long, NumArg As Long) As Double
    On Error GoTo MOROBABOUMAR
    If IsNull(NumPa) Or IsNull(NumArg) Then Exit Function
    Dim BD As Database
    Dim R As Recordset
    Dim sql As String
    Set BD = CurrentDb
    sql = "select * from [Tbl_MontantaPartagerEMS] where ID_Fond_EMS = " & NumPa & " and NumMontantApartager = " & NumArg & ";"
    Set R = BD.OpenRecordset(sql)
    With R
        If Not .EOF Then
        F_RamenantMontantNetAPartager = .Fields("Montant Net")
        Else
        F_RamenantMontantNetAPartager = 0
        End If
    End With
    Exit Function
    MOROBABOUMAR:
        MsgBox "Erreur n° " & Err.Number & vbCrLf & Err.Description, vbCritical + vbOKOnly, "Une erreur est survenue"
    End Function
    Message d'erreur:

    Nom : Capture2.JPG
Affichages : 88
Taille : 14,3 Ko
    Nom : Capture1.JPG
Affichages : 76
Taille : 108,4 Ko

    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 637
    Points : 14 611
    Points
    14 611
    Par défaut
    boonjour,
    tu aimes faire compliqué: pourquoi vouloir absolument créer une fonction alors que DLookup fait exactement la même chose ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Nz(Vraifaux(EstNull(NumPa) ou EstNull(NumArg);0;RechDom("[Montant Net]";"[Tbl_MontantaPartagerEMS]";"ID_Fond_EMS = " & NumPa & " and NumMontantApartager = " & NumArg));0)
    [EDIT:] d'autre part, en regardant de près la capture d'écran, je vois que le problème vient du fait qu'à la fin de ta fonction il y a un paramètre (de trop) contenant 0 séparé par une virgule (utilisé seulement dans SQL et dans VBA) alors qu'il attend un point-virgule dans l'interface de création des formulaires
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir tee_grandbois,
    Toujours très content de vous retrouver !
    Je viens d'essayer le code que vous me suggérez mais voici ce qui est affiché:

    Nom : Capture4.JPG
Affichages : 52
Taille : 26,5 Ko
    Nom : Capture5.JPG
Affichages : 48
Taille : 139,2 Ko

    Pièce jointe
    Cordialement.
    Fichiers attachés Fichiers attachés
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 637
    Points : 14 611
    Points
    14 611
    Par défaut
    bonjour,
    j'ai été un peu vite hier soir, il faut juste remplacer les paramètres (NumPa et NumArg) par les champs du formulaire (ID_FondatEMS et lst_NumMontantAPartagerFrm_TblMembreFamilleEMS)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =Nz(VraiFaux(EstNull([ID_FondatEMS]) Ou EstNull([lst_NumMontantAPartagerFrm_TblMembreFamilleEMS]);0;RechDom("[Montant Net]";"[Tbl_MontantaPartagerEMS]";"ID_Fond_EMS = " & [ID_FondatEMS] & " and NumMontantApartager = " & [lst_NumMontantAPartagerFrm_TblMembreFamilleEMS]));0)
    PS: Merci d'utiliser le bouton "Répondre à la discussion" plutôt que le bouton "Répondre avec citation" cela encombre inutilement les posts
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  5. #5
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut Remerciement
    Bonsoir tee_grandbois,
    Votre code marche !
    Message compris !
    Merci infiniment.
    A bientôt pour une autre discussion.
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

  6. #6
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 114
    Points : 491
    Points
    491
    Par défaut
    Bonsoir tee_grandbois,

    Peut on appeler ma fonction avec la méthode suivante ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =VraiFaux(EstNull([ID_FondatEMS] & [lst_NumMontantAPartagerFrm_TblMembreFamilleEMS]);0;RamenantMontantNetAPartager([ID_FondatEMS];[lst_NumMontantAPartagerFrm_TblMembreFamilleEMS]))
    Cordialement.
    Je ne Suis Pas un Expert en Programmation
    Le savoir est la lumière de l'esprit
    Le chemin de la réussite

    Les savants sont les héritiers de la science
    Qui cherche positivement trouve
    Tout ce qui brille n'est pas l'or ou diamant
    Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Requête liste dépendantes avec gestion de champs nuls
    Par Lyysis dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 16/07/2013, 10h52
  2. [ADO] Parambyname et champ nul
    Par okparanoid dans le forum Bases de données
    Réponses: 2
    Dernier message: 13/11/2006, 12h31
  3. Réponses: 9
    Dernier message: 28/07/2006, 17h38
  4. Probleme d'extraction des champs nuls
    Par ETOKA dans le forum SQL
    Réponses: 2
    Dernier message: 17/01/2005, 11h03
  5. Requête et champs nuls
    Par Argonan dans le forum Access
    Réponses: 2
    Dernier message: 12/10/2004, 15h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo