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

VB 6 et antérieur Discussion :

Opération de control avec un recordset


Sujet :

VB 6 et antérieur

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 33
    Par défaut Opération de control avec un recordset
    bonjour, je voudrai pouvoir controler les données qui sont entrées dans ma table Données_Prix pour éviter d'avoir d'avoir deux fois le même attribut 'Désignation', pour cela j'ai essayer avec un recordset et le code suivant:
    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
    Sub BoutonRenseigner_Click()
    Dim Table As String
    Dim Thème As String
     
     
     
    Réf = Me![Désignation]
     
    SQL = "SELECT [Désignation] FROM [Données_Prix] WHERE [Désignation]= '" & Réf & "';"
    Set Control = CurrentDb.OpenRecordset(SQL)
     
    If Control.[Désignation] = Me![Désignation] Then
        Maj = MsgBox("la donnée existe déjà dans la base" & Chr(10) & "voulez vous mettre à jour cette donnée?", vbInformation + vbYesNoCancel, "mise à jour")
        If Maj = vbYes Then
     
        Ouvrir (miseajour)
     
            ElseIf Maj = vbCancel Then
                Unload (Me)
     
            ElseIf Maj = vbNo Then
     
     
        End If
    Else
    Renseigner
    End If
    mais Access m'annonce une erreur à la premiere ligne de mon "if". l'erreur est "aucun enregistrement en cours". ce qui est vrai puisque, dans ce cas, je n'ai pas de données dans ma base ayant la même désignation. comment puis je contourner cette erreur, ou y a t'il un moyen plus simple pour effectuer ce control?

    merci d'avance,

    jouf

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 33
    Par défaut
    où elle est executer?
    lors de l'ouverture de mon recordset, non?

  3. #3
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Tu dois, je crois, commencer par vérifier que ton RecordSet n'est pas vide. La méthode que j'utilise pour faire ça est de vérifier qu'on ne se trouve pas en même temps au début ET à la fin du RecordSet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Not (MonRecordSet.EOF And MonRecordSet.BOF) Then
       ...
    End If
    Ça fait longtemps, alors je ne te jure pas que la syntaxe est bonne, mais c'est le principe...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 33
    Par défaut
    hummm, mais, en fait, mon but est de vérifier que ma nouvelle donnée n'est pas dans la table avant de la rentrer, donc, si c'estle cas, mon recordset doit être vide,, non?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 33
    Par défaut
    j'ai compris!!
    désolé pour la réponse...

    merci beaucoup!!!

  6. #6
    Membre averti
    Inscrit en
    Janvier 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 39
    Par défaut
    Tu pourrais nou en dire plus sur le currendb.openrecordset(SQl) c'est quoi??

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

Discussions similaires

  1. [VB.NET] Création de control avec visual studio
    Par HULK dans le forum Windows Forms
    Réponses: 6
    Dernier message: 01/08/2007, 18h06
  2. Réponses: 5
    Dernier message: 12/05/2005, 10h49
  3. [VB.NET] Comment récupérer le nom d'un control avec le focus
    Par jayce007 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 20/01/2005, 00h53
  4. [VB.NET] ForeColor d'un control avec Enabled=False
    Par jennings dans le forum Windows Forms
    Réponses: 2
    Dernier message: 06/12/2004, 14h41
  5. Test d'éxistence avec un RecordSet
    Par matt63 dans le forum Langage SQL
    Réponses: 10
    Dernier message: 21/04/2004, 12h23

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