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

  1. #1
    Membre du Club
    Comment exécuter procédure d'un module standard ?
    Bonjour,
    Mon problème et comment faire appel d'une procédure d'un module standard sur btn clic?
    En faite j'ai cherché dans FAQ ,mais je n'ai pas compris.
    merci pour votre aide.

  2. #2
    Membre expert
    Si vous avez créé des sub() ou function() dans un module standard pour les appeler via un btn de commande d'un form
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Commande4_Click()
    Call nomdelafunction ou nomdelasub
    End Sub

  3. #3
    Membre du Club
    Apres avoir effacer les "ME." de ma procedure filtre le code bug sur filter=f que doit je faire?
    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
    Public Sub filtre()
    'filtre remis a zero
    f = ""
    'produit..................................................................................................................
    If Not IsNull(RCHPRODUIT) And RCHPRODUIT <> "" Then
    If f <> "" Then
    f = f & " AND produitnaf = """ & RCHPRODUIT & """"
    Else
    f = "produitnaf = """ & RCHPRODUIT & """"
    End If
    End If
    
    'Mouvement..................................................................................................................
    If Not IsNull(rchmouvement) And rchmouvement <> "" Then
    If f <> "" Then
    f = f & " AND mouvement = """ & rchmouvement & """"
    Else
    f = "mouvement = """ & rchmouvement & """"
    End If
    End If
    Filter = f
    FilterOn = True
    End Sub

  4. #4
    Membre expert
    Et dois-je peut-être vous rappeler que vous travaillez dans un formulaire de navigation. Que dans le sform de navigation vous avez insérez un sform.

  5. #5
    Membre du Club
    Non il n'ya que 1 tbl,1 form et 1 module de filtre dans ma bdd exemple.

  6. #6
    Expert éminent
    bonjour,
    suite à cette discussion voici, en prime, le code qu'il faut mettre pour que cela fonctionne avec une sub dans un module standard :
    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
    26
    27
    28
    29
    Option Compare Database
    Sub filtre(frm As Form)
    'formulaire Transfert
    Dim f As String
     
    'filtre remis a zero
    f = ""
    'produit..................................................................................................................
    If frm.Controls("RCHPRODUIT") & "" <> "" Then
        If f <> "" Then
            f = f & " AND produitnaf = """ & frm.Controls("RCHPRODUIT") & """"
        Else
            f = "produitnaf = """ & frm.Controls("RCHPRODUIT") & """"
        End If
    End If
     
    'Mouvement................................................................................................................
    If frm.Controls("rchmouvement") & "" <> "" Then
        If f <> "" Then
            f = f & " AND mouvement = """ & frm.Controls("rchmouvement") & """"
        Else
            f = "mouvement = """ & frm.Controls("rchmouvement") & """"
        End If
    End If
     
    frm.Filter = f
    frm.FilterOn = True
     
    End Sub

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub rchmouvement_Click()
    Call filtre(Me)
    End Sub
     
    Private Sub RCHPRODUIT_Click()
    Call filtre(Me)
    End Sub
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  7. #7
    Membre du Club
    Ouf ,vous me sauver ,mais un jour j'ouvrirai une discussion pour comprendre les filtres. Encore merci.

  8. #8
    Expert éminent
    la seule chose à savoir lorsqu'on passe par un module standard, donc externe au formulaire, c'est qu'il faut préciser sur quel formulaire on va travailler, c'est pour cela qu'on le passe en paramètre:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    Call filtre(Me)
    Me représente le formulaire en cours:
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...

  9. #9
    Membre du Club
    re
    Bonjour,
    Le code fonctionne ,mais quelque fois erreur . j'ai essayé de mettre gestionnaire d'erreur mais rien.
    "L'expression Sur changement entrée comme paramètre de la propriété du type événement est à l'origine d'une erreur. ruturn sans gosub.

  10. #10
    Expert éminent
    bonjour,
    Le code fonctionne ,mais quelque fois erreur .
    on ne peut pas faire grand chose si l'erreur est aléatoire ...
    à tout hasard, ajoute cette ligne à la fin du Sub filtre:
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...