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 :

VBA pour Acces Mise a jour table


Sujet :

Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 29
    Points : 13
    Points
    13
    Par défaut VBA pour Acces Mise a jour table
    Bonjour j'ai un problème pour mettre a jour une table, je pense que le problème vient de la ligne ou je vous au mis des ### si quelqu'un pouvait m'aider

    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
     Dim maBD As Database
    Dim Valeur As Double
    Dim reqSQL As String
    Dim choix As Integer
    Dim x As Integer
     
    Set maBD = CurrentDb()
     
    Valeur = InputBox("Veuillez saisir un montant de la forme 1.x pour l'augmentation du prix d'un DVD:")
     
    If Valeur = "" Then 'l'utilisateur a rien mis dans "Valeur"
                choix = MsgBox("Vous n'avez rien rentré, Aucune Mise à jour effectuée.", vbOKOnly + vbExclamation, "Erreur")
                If choix = vbOKOnly Then
                    Exit Sub
                End If
        Else: reqSQL = "UPDATE INTO DVD (PrixVente)"
     ##### reqSQL = reqSQL & " VALUES ('" & PrixVente & " * " & Valeur & "');"
     
        MsgBox reqSQL
        maBD.Execute reqSQL
        DoCmd.Save
        RefreshDatabaseWindow
     
        x = MsgBox("Update Effectué Correctement", vbInformation)
     
        End If 'obligatoire dans la syntaxe de if .... end if
    'Call Saisi
    End Sub

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Ton problème vient des ", il faut les mettre par 3 """
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 679
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 679
    Points : 14 675
    Points
    14 675
    Par défaut
    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
     Dim maBD As Database
    Dim Valeur As Double
    Dim reqSQL As String
    Dim choix As Integer
    Dim x As Integer
     
    Set maBD = CurrentDb()
     
    Valeur = InputBox("Veuillez saisir un montant de la forme 1.x pour l'augmentation du prix d'un DVD:")
     
    If Valeur = "" Then 'l'utilisateur a rien mis dans "Valeur"
                choix = MsgBox("Vous n'avez rien rentré, Aucune Mise à jour effectuée.", vbOKOnly + vbExclamation, "Erreur")
                If choix = vbOKOnly Then
                    Exit Sub
                End If
        Else: reqSQL = "UPDATE INTO DVD (PrixVente)"
     ##### reqSQL = reqSQL & " VALUES ('" & PrixVente & " * " & Valeur & "');"
     
        MsgBox reqSQL
        maBD.Execute reqSQL
        DoCmd.Save
        RefreshDatabaseWindow
     
        x = MsgBox("Update Effectué Correctement", vbInformation)
     
        End If 'obligatoire dans la syntaxe de if .... end if
    'Call Saisi
    End Sub
    Bonsoir,
    Tout d'abord, je trouve bizarre de passer par un inputbox pour mettre à jour une table : pourquoi ne pas utiliser tout simplement un formulaire basé sur cette table ? les contrôles seraient plus simples à faire. Ensuite tu informes l'utilisateur de saisir un montant sous un format 1.x sans contrôler par la suite si la saisie est correcte, à part le fait qu'elle soit nulle.
    Enfin, si toutefois tu veux continuer à utiliser cette méthode ton code mélange la syntaxe de mise à jour (UPDATE) et celle de l'ajout (INTO ... VALUES)
    Voici le code correct :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reqSQL = "UPDATE DVD SET PrixVente = PrixVente * " & Val(Valeur)
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

Discussions similaires

  1. création d'un module vba pour une mise à jour access
    Par ponpon99 dans le forum VBA Access
    Réponses: 4
    Dernier message: 27/12/2013, 13h37
  2. [FEDORA] Temps pour la mise à jour de FC4 à FC5
    Par mamiberkof dans le forum RedHat / CentOS / Fedora
    Réponses: 5
    Dernier message: 08/04/2006, 19h28
  3. [VBA-E]Boucle mise a jour label
    Par alex_95 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/03/2006, 14h32
  4. TADOTable VS TADOQuery pour une mise a jour
    Par okparanoid dans le forum Bases de données
    Réponses: 7
    Dernier message: 07/11/2005, 11h53
  5. pbm de mise a jour table
    Par khier dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/09/2005, 00h08

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