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

VBA Access Discussion :

Quelles sont les raisons pour lesquelles on ne puisse pas mettre à jour un recordset?


Sujet :

VBA Access

  1. #1
    Membre régulier Avatar de keketteboy
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2008
    Messages : 100
    Points : 73
    Points
    73
    Par défaut Quelles sont les raisons pour lesquelles on ne puisse pas mettre à jour un recordset?
    Bonjour toute la communauté !!

    Alors, voilà mon problème. J'ai créé un formulaire avec des listes déroulantes modifiables qui me servent de filtre pour affiner une recherche. Quand je veux modifier ma recherche en cliquant sur une de ces listes, toutes les listes en aval doivent se mettre à zéro. Mon problème c'est que ça marche très bien sauf pour un contrôle et ça me met "impossible de mettre à jour RecordSet" ?? Quelles peuvent en être les raisons ??

    Voici mon 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
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
     
    Private Sub cbAnnee_Change()
     
    Num_Prod.Value = ""
     
    Critère3.Value = ""
    Critère3.Requery
     
    Critère2.Value = ""
    Critère2.Requery
     
    Nom_Prod.Value = ""
    Nom_Prod.RowSource = "SELECT [Nom_Produit], [Num_Produit] FROM [Produits] " _
    & "WHERE [Num_Contrat] = [Forms]![MonFormulaire]![numcontrat2] ORDER BY [Nom_Produit] ;"
     
    Critère1.Value = ""
     
    Num_Prod.Value = ""
     
    End Sub
     
    Private Sub cbAnnee_Click()
     
    Num_Prod.Value = ""
     
    Critère3.Value = ""
    Critère3.Requery
     
    Critère2.Value = ""
     
    Critère1.Value = ""
     
    End Sub
     
    Private Sub Critère1_Change()
     
    Num_Prod.Value = ""
     
    Critère2.Value = ""
    Critère2.RowSource = "SELECT [MaRequeteSurCritere2].[Critère2] FROM MaRequeteSurCritere2 BY [MaRequeteSurCritere2].[Critère2]; "
     
     
    Critère3.Value = ""
    Nom_Prod.Value = ""
     
    End Sub
     
    Private Sub Critère3_Change()
     
    numcontrat2.Requery
    Critère3.Requery
     
    Nom_Prod.Value = ""
    Nom_Prod.RowSource = "SELECT [Nom_Produit], [Num_Produit] FROM [Produits] " _
    & "WHERE [Num_Contrat] = [Forms]![MonFormulaire]![numcontrat2] ORDER BY [Nom_Produit] ;"
     
    Num_Prod.Value = ""
     
    End Sub
     
    Private Sub Critère2_Change()
    Critère3.Value = ""
    Critère3.RowSource = "SELECT [MaRequeteSurCritere3].[Critère3] FROM MaRequeteSurCritere3; "
    Nom_Prod.Requery
    Num_Prod.Value = ""
    Nom_Prod.Value = ""
     
    End Sub
     
    Private Sub Nom_Prod_Change()
     
    Dim numcontrat As String
     
    numcontrat = numcontrat2.Value
     
    Num_Prod.Value = Nom_Prod.Value
    Là où ça bloque c'est sur mon critère2. Il ne veut pas le remettre à jour. Je ne vois vraiment pas pourquoi, puisque j'utilise ce même code dans un autre formulaire et il fonctionne très bien.

    Merci d'avance.
    Haï-Ha TRINH-VU, Consultant MS BI.

    "L'expérience est une lanterne attachée dans notre dos, qui n'éclaire que le chemin parcouru."
    "Lorsque l'on se cogne la tête contre un pot et que cela sonne creux, ça n'est pas forcément le pot qui est vide."

    Confucius

    Merci de cliquer sur si la réponse apportée est celle attendue.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 595
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 595
    Points : 34 271
    Points
    34 271
    Par défaut
    SAlut,
    il me semble que cette requete n'est pas "viable"
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    Critère2.RowSource = "SELECT [MaRequeteSurCritere2].[Critère2] FROM MaRequeteSurCritere2 BY [MaRequeteSurCritere2].[Critère2]; "

    ne manque-t-il pas un GROUP ou un ORDER ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre régulier Avatar de keketteboy
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2008
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2008
    Messages : 100
    Points : 73
    Points
    73
    Par défaut
    euh ... si, c'était un GROUP BY qui s'est perdu malheureusement dans le copier-coller de mon code. Je viens tout juste de comprendre pourquoi ça ne marchait pas. J'avais modifié la propriété Source sans m'en rendre compte.
    :p Merci beaucoup !!! Sinon j'aimerais savoir s'il existait une fonction qui permettrait de parcourir chaque ligne d'un tableau dans un formulaire afin de récupérer les valeurs des cases, un peu comme la fonction For Each mais qui n'existe que pour les contrôles (j'ai essayé pour mon tableau mais ça me sort un message d'erreur comme quoi la fonction ne prenait pas ce type d'objet).
    Haï-Ha TRINH-VU, Consultant MS BI.

    "L'expérience est une lanterne attachée dans notre dos, qui n'éclaire que le chemin parcouru."
    "Lorsque l'on se cogne la tête contre un pot et que cela sonne creux, ça n'est pas forcément le pot qui est vide."

    Confucius

    Merci de cliquer sur si la réponse apportée est celle attendue.

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

Discussions similaires

  1. Quelles sont vos raisons pour migrer vers Windows 7 ?
    Par shawn12 dans le forum Windows 7
    Réponses: 44
    Dernier message: 27/10/2009, 14h02
  2. Réponses: 5
    Dernier message: 15/06/2009, 11h28
  3. Réponses: 1
    Dernier message: 27/02/2009, 09h32
  4. Quelles sont les étapes pour préparer la création d'un jeu ?
    Par Nicolas A. dans le forum Développement 2D, 3D et Jeux
    Réponses: 13
    Dernier message: 17/09/2008, 18h09
  5. Quelles sont les études pour devenir développeur ?
    Par soft0613 dans le forum Etudes
    Réponses: 9
    Dernier message: 15/11/2007, 14h04

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