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 :

Ajout dans une liste/vérification


Sujet :

Access

  1. #1
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 338
    Points : 4 295
    Points
    4 295
    Par défaut Ajout dans une liste/vérification
    Bonjour,

    J'ai un petit soucis et en fait je vois aps trop comment m'en sortir

    J'espère que vous pourrez m'aider et que la solution n'est pas dans la FAQ parce que j'ai regardé mais j'ai pas trouvé

    Voila. J'ai un formulaire qui va m'aider a insérer des données dans dans une base.

    Voila la procédure lors du click (qui est incomplète) :

    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
    Private Sub Ajout_essai_Click()
    Dim cmd As Command
    Dim rs As Recordset
    Dim n As Integer
    Dim SQL As String
    Set rs = New ADODB.Recordset
    rs.ActiveConnection = CurrentProject.Connection
    rs.Open "Essais"
    Do Until rs.EOF
        n = rs.Fields("Numero")
        rs.MoveNext
    Loop
    n = n + 1
    Set cmd = New ADODB.Command
    cmd.ActiveConnection = CurrentProject.Connection
    SQL = "INSERT INTO Essais VALUES (" & n 
    If ztdate_essai.Value <> "" Then
        SQL = SQL & ",#" & Format(ztdate_essai, "mm/dd/yyyy") & "#"
    End If
    If zlDossier.Value <> "" Then
        If verifliste(zlDossier, zlDossier.Value) Then
     
                    [b] ???[/b]
     
    .....     
    'cmd.CommandText = SQL
    'cmd.Execute
    'MsgBox ("La base " & ztnom_essai.Value & " a été ajoutée ! ")
    'DoCmd.Close
    End Sub
    J'utilise les fonctions suivantes présentes dans la FAQ :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Function verifliste(Liste As ListBox, Valeur As String) As Boolean
    Dim i As Integer
    For i = 0 To Liste.ListCount - 1
        If Liste.ItemData(i) = Valeur Then
            verifliste = True
        Else
            verifliste = False
        End If
    Next i
    End Function
    et la procédure :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub zlDossier_NotInList(NewData As String, Response As Integer)
    Dim cmd As Command
    Set cmd = New ADODB.Command
    cmd.ActiveConnection = CurrentProject.Connection
    If MsgBox("Voulez vous ajouter " & NewData & "à la liste ? ", vbYesNo + vbQuestion + vbDefaultButton2, "Ajout") = vbYes Then
        cmd.CommandText = "INSERT INTO Essais Values ('" & NewData & "');"
        cmd.Execute
        Response = acDataErrAdded
    Else
        Response = acDataErrContinue
        zlDossier.Undo
    End If
    End Sub
    En fait mon problème est que sur le If je voudrais faire une condition de telle sorte que si la personne ne va pas chercher la valeur dans la liste et qu'il en rentre une, soit si elle y est (donc on vérifie en utilisant la fonction verifliste) on la sélectionne automatiquement dans la liste (en faisant un ItemData : ), soit si elle n'y est pas, il rajoute la valeur à la liste, sachant que dans la table de départ les valeur de 'Dossier' n'est pas une liste mais du texte. Mais dans le formulaire, c'est en fait une requete SQL qui donne les valeurs de la liste dans le formulaire (sachant que la table de départ a pour le moment 150 données)
    Je sais pas si j'ai été très clair sur ce dernier point

    Finalement, je voudrais faire une "combo" de toutes ces fonctions mais j'y arrive pas

    En fait, et parrallèlement, je pense qu'il faudrait utiliser la fonction NotInListe mais je vois pas trop comment l'utiliser

    Je vous remercie de l'attention que vous porterez a ce message j'espère avoir été assez clair dans ma demande et je vous remercie par avance de l'aide que vous m'apporterez
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Bonjour,

    Je comprend pas bien l'intérêt du bouton supplémentaire.
    Avec le code de la procédure zlDossier_NotInList ça fonctionne bien non?
    En tapant directement une valeur dans le champs :
    - si la valeur existe ben y a rien à faire
    - si elle n'existe pas tu la rajoutes.

    A part que je ne comprend pas non plus :
    dans la table de départ les valeur de 'Dossier' n'est pas une liste mais du texte
    C'est une table avec un dossier par ligne et qui remplit la liste non?

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

Discussions similaires

  1. Ajout dans une List<HashTable>
    Par funtix dans le forum C#
    Réponses: 3
    Dernier message: 19/02/2007, 21h35
  2. Réponses: 3
    Dernier message: 26/08/2006, 14h03
  3. Ajout dans une liste déroulante
    Par auriolbeach dans le forum Access
    Réponses: 5
    Dernier message: 16/02/2006, 05h37
  4. Ajout dans une liste avec un bouton
    Par Invité dans le forum Access
    Réponses: 6
    Dernier message: 07/12/2005, 08h27
  5. [LG]probleme d'ajout dans une liste chainée...
    Par misteryann dans le forum Langage
    Réponses: 5
    Dernier message: 08/03/2004, 20h28

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