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

IHM Discussion :

problème de reconnaissance de formulaire


Sujet :

IHM

  1. #1
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    521
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 521
    Points : 167
    Points
    167
    Par défaut problème de reconnaissance de formulaire
    Salut
    j'ai un formulaire qui se nomme "frm Test" et je lui applique un filtre dans une partie du code généré automatiquement que voici
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    ' ---
    ' METHODE CreerFonctionRecherche
    ' ---
    ' Ecrit une fonction de recherche générique dans le
    ' module du formulaire de recherche.
    ' Cette fonction est destinée à être appelée depuis
    ' l'événement Après MAJ (AfterUpdate) de chaque champ critère.
    '
    Private Sub CreerFonctionRecherche(frm As Form, lstChampsSelectionnes As ListBox)
    Dim strProg As String
    Dim strLigne As String
    Dim intI As Integer
    Dim strChamp As String
    
    ' Construction automatique du programme VB
    strProg = "Sub Recherche()" & vbCrLf & _
        "Dim strFiltre As String, strSQL As String" & vbCrLf & vbCrLf & _
        "strFiltre = """"" & vbCrLf
    
    ' Un filtre pour chaque champ
    For intI = 0 To lstChampsSelectionnes.ListCount - 1
        ' Nom du champ
        strChamp = lstChampsSelectionnes.ItemData(intI)
        
        strProg = strProg & "If Not IsNull(Me![c_" & strChamp & "]) Then" & vbCrLf & _
            vbTab & "If strFiltre <> """" Then strFiltre = strFiltre & "" AND """ & vbCrLf
        strLigne = ConstruireCritere(strChamp)
        strProg = strProg & vbTab & strLigne & vbCrLf & "End If" & vbCrLf
    Next
    
    ' Application du filtre
    strProg = strProg & "Me!sfmRésultat.Form.Filter= strFiltre" & _
        vbCrLf & "Me!sfmRésultat.Form.FilterOn = True"
        
    strProg = strProg & vbCrLf & "frm Test.Form.Filter= strFiltre" & _
        vbCrLf & "frm Test.Form.FilterOn = True"
    ' Fin du programme
    strProg = strProg & vbCrLf & "End Sub"
    
    ' Ajout du programme au module
    ' du formulaire de recherche
    Dim mdl As Module
    Set mdl = frm.Module
    mdl.InsertText strProg
    Set mdl = Nothing
    End Sub
    quand je clique sur le bouton qui est est censé généré ce code j'ai une erreur icià cause de l'espace entre le formulaire. Lorsque je décide d'encadrer mon formulaire par des crochet comme ceci lors de la génération du code access met une erreur à cause des crochets car il considère que les crochets font aussi parti du nom du formulaire donc il me dit que ce formulaire n'existe pas.
    si quelqu'un peut m'aiguiller pour qu'access considère mon instruction sans me créer des erreurs ça m'aiderai.
    Je sais que je peux contourner le problème en ayant un nom de formulaire sans espace mais mon but est de savoir réagir à tous les cas sans forcément contourner les problèmes.
    Merci

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    Ce n'est pas que je ne veuille pas t'aider, mais la finalité générale m'échappe.
    Pourquoi faire créer par du code une fonction de recherche ?

  3. #3
    Membre habitué
    Inscrit en
    Avril 2007
    Messages
    521
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 521
    Points : 167
    Points
    167
    Par défaut
    je crée une fonction de recherche parceque j'ai dans une liste déroulante toutes les tables et les requetes de ma base . quand l'utilisateur choisi une table ou une rquete, tous les champs de celle-ci apparaissent à gauche dans une liste, ensuite l'utilisateur choisi des champs avec lesquels il veut faire une recherche alors un formulaire est créé automatiquement avec les controles correspondant aux champs qu'il a sélectionné. Il faut dire que le formulaire généré est attaché à un sous formulaire en mode feuille pour permettre à l'utilisateur de voir les données sur lesquels il travail et c'est justement là que la fonction de recherche intervient quand dans, le formulaire possédant les controles il renseigne une valeur exemple il veut avoir dans son sous formulaire les clients qui ont fait commande il entre dans le controle correspondand "commande" et la le sous formulaire est mit à jour. Mon problème ici est qu'une fois que ces critères de filtre sont fait je ne peut pas les appliquer à cause du problème que j'ai décrit précédemment.

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/06/2010, 14h23
  2. Problème d'envoi par formulaire
    Par k o D dans le forum Langage
    Réponses: 3
    Dernier message: 29/12/2005, 18h31
  3. Problème heure dans un formulaire
    Par Faro dans le forum Access
    Réponses: 7
    Dernier message: 15/09/2005, 11h11
  4. [FLASH MX2004] Problème de reconnaissance des caractères
    Par Spikefreeman dans le forum Flash
    Réponses: 10
    Dernier message: 04/01/2005, 23h08
  5. [HTML] Problème d'envoi de formulaire
    Par autumn319 dans le forum ASP
    Réponses: 26
    Dernier message: 03/09/2003, 10h06

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