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

Macros et VBA Excel Discussion :

if (condition ) then " update" else " insert "


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 126
    Points : 46
    Points
    46
    Par défaut if (condition ) then " update" else " insert "
    salut

    je cherche à faire " update or insert " selon une condition.
    cette condition est si le champs "nom" de la base de données acces est
    par exemple "developpez". c'est simple et ce code marche bien.

    mais en réalité , cette condition dépend de contenu de champs :c' est à dire on parcourcu le colonne si cette valeur existe déjà donc on fais seulement "update " si cette valeur n’existe pas dans le colonne c' é a dire un nouveau user on fais un "insert into "

    est ce que je fais select avant la condition ? et comment mettre le résultat dans l’instruction (if )

    voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
        Private Sub CommandButton1_Click()
        Dim con As New ADODB.Connection
        con.ConnectionString = "Dbq= C:\Documents and Settings\Bureau\aplication_2011\essaye\base.accdb;" & "Driver={Microsoft Access Driver (*.mdb, *.accdb)};"
        con.Open
     
        If (TextBox1.Value = "developpez" ) Then
        con.Execute ("update user set prenom ='" & TextBox2.Text & "' where nom = '" & TextBox1.Text & "' " )
        Else:
        con.Execute ("insert into user (nom, prenom ) values ( '" & TextBox1.Text & "','" & TextBox2.Text & "') " )
        con.Close
        Set con = Nothing
        End If
        End Sub
    merci d'avance

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    Bonjour,
    essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "INSERT INTO user ( nom, prenom) SELECT """ & TextBox1.Text & """ , """ & TextBox1.Text & """;"
    préférer des double guillemets pour l'apostrophe car sinon D'Alembert ne passe pas

  3. #3
    Membre du Club
    Inscrit en
    Avril 2009
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 126
    Points : 46
    Points
    46
    Par défaut
    salut
    merci helas

    j'ai trouvé une solution en gros
    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
     
    'Vérif si enregistrement existant
    Set rs.ActiveConnection = con
    rs.Open " Select  * from table  where champ = valeur ;"
     
    'Traitement
    If rs.EOF Then '(si pas d'enregistrements)
     
    'insertion
     
    sql = " insert into table .......
    con.Execute sql
     
    Else '(au moins un enregistrement)
     
    sql2 = " UPDATE table SET ........
    con.Execute sql2
     
    End If
     
    rs.Close
    Set rs = Nothing
    con.Close
    Set con = Nothing

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

Discussions similaires

  1. Update avec variable contenant une quote
    Par NejNej dans le forum Développement
    Réponses: 2
    Dernier message: 13/11/2009, 17h51
  2. Insertion quote et double quote
    Par Ebisu dans le forum SQL*Loader
    Réponses: 8
    Dernier message: 08/10/2008, 17h41
  3. [ACCESS][JAVA][INSERT][QUOTE]Pb insertion quot
    Par 205 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 31/01/2008, 17h00
  4. [MySQL] transformer une simple quote en double pour un insert !!
    Par st0nky dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/01/2006, 16h38

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