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 :

Se placer sur un enregistrement suivant un champ de table si trouvé.


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 62
    Points
    62
    Par défaut Se placer sur un enregistrement suivant un champ de table si trouvé.
    Bonjour a tous.
    Je construit une base de données fait par une autre personne avant (BDD faite n'importa comment...)

    J'ai une table ou la clé est CodeEXP.

    A l'ouverture d'un formulaire, je demande ce code.

    si le code est trouvé dans la base, les champs de mon formulaire affiche les valeur.
    Si ce code n'est pas trouvé, je veux creer un nouvel enregistrement dasn la table.

    Je n'arrive pas a savoir comment faire cela...
    les recherche ne m'ont pas plus aidée...

    Comment faire?
    je pense grace a un record set mais j'ai un doute sur la maniere de faire;..

  2. #2
    Membre régulier Avatar de SnakeCharmer
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2008
    Messages : 117
    Points : 112
    Points
    112
    Par défaut
    Quelle est la méthode utilisée pour la recherche ??
    tu peux essayer avec "if TaRequete.recordcount = 0" (aucune réponse trouvée)
    mais ensuite... a toi de voir comment gérer le nouvel enregistrement, si tu passes par le formulaire o autrement. A toi de voir !

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 62
    Points
    62
    Par défaut
    Pour le moment rien....


    Ma preference serais un record set

  4. #4
    Membre régulier Avatar de SnakeCharmer
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2008
    Messages : 117
    Points : 112
    Points
    112
    Par défaut
    Recordcount fonctionne aussi pour les tables

    Set db = Currentdb
    Set tb1 = db.TableDefs("TaTable").OpenRecordset
    If tb1.RecordCount = 0 Then

    C'est une idée, mais sans trop savoir comment fonctionne ton formulaire, pas évident :/

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 62
    Points
    62
    Par défaut
    le truc, c'est que je veux me positionner sur un enregistrement precis et ce suivant la CLE de la table.
    Et si elle n'existe pas, creer un nouvel enregistrement.

    LE soucis est en fait pour moi de trouver le code qui permet de tester si cet enregistrement existe.

    et cela je le fais a l'ouverture du formulaire.
    mon forme s'appuie sur la table.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 147
    Points : 62
    Points
    62
    Par défaut
    Pour le moment j'ai fait cela

    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
     
    Dim Reponse As Variant
        Reponse = InputBox("Quel est le Code Exploitant du vendeur?", "Code Exploitant du Vendeur")
     
     
     
    'Si l'utilsateur ne repond rien, on ferme le formulaire
    If (Reponse = "") Then
        DoCmd.Close
        Exit Sub
     
    Else
     
     
        Dim MaTable As DAO.Recordset
        Dim position As Integer
        Dim VarStop As Boolean
        VarStop = False
     
     
        position = -1
     
     
        'On recupere la position absolu du formulaire
        Set MaTable = CurrentDb.OpenRecordset("_Bourse_De_Droits")
        'Tant que l'on est pas a la fin de la table
            Do Until ((MaTable.EOF = True) Or VarStop)
                If (MaTable("CodeExploitant") = CStr(Reponse)) Then
                      position = MaTable.AbsolutePosition
                End If
              MaTable.MoveNext
            Loop
        MaTable.Close
     
     
        If (position = -1) Then
            DoCmd.GoToRecord , , acNewRec
            Me.CodeExploitant = Reponse
        Else
            'Comment se placer a la position donnée???
        End If
     
     
    End If
    Mais je suis bloqué...

Discussions similaires

  1. Réponses: 8
    Dernier message: 01/12/2014, 14h18
  2. Réponses: 5
    Dernier message: 08/06/2013, 14h23
  3. Réponses: 8
    Dernier message: 15/01/2010, 00h32
  4. Réponses: 5
    Dernier message: 19/07/2007, 12h27
  5. Réponses: 2
    Dernier message: 16/10/2004, 15h33

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