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 :

Recordset et variables


Sujet :

Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 12
    Points : 8
    Points
    8
    Par défaut Recordset et variables
    Bonjour,

    je cherche à réduire mon code VBA en passant des champs dans un tableau de string pour ensuite le manipuler dans une boucle qui appelera chaque champs à la suite

    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
    Dim FieldName(0 To 3) As String
    FieldName(0) = "fesfsf"
    FieldName(1) = "sethdt"
    FieldName(2) = "sthuu"
    FieldName(3) = "tbbrth"
     
    Set oDb = CurrentDb
     
    For i = 1 To 3
        Champ = FieldName(i)
        Set oRst = oDb.OpenRecordset("SELECT " + Chr(39) + Champ + Chr(39) + " FROM [tblChgRefCial]", dbOpenDynaset)
        If (oRst.RecordCount <> 0) Then
            oRst.MoveLast
            While Not (oRst.BOF)
                While ((Left(oRst.Fields(Chr(39) + Champ + Chr(39)).Value, 1) = 0) And (Left(oRst.Fields(Champ).Value, 2) <> "0,"))
                    stValeur = Right(oRst.Fields(Champ).Value, (Len(oRst.Fields(Champ).Value) - 1))
                    oRst.Edit
                    oRst.Fields(Champ).Value = stValeur
                    oRst.Update
                Wend
                oRst.MovePrevious
            Wend
        End If
        oRst.Close
    Next i
    Pourquoi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oRst.Fields(Champ).Value
    ne me retourne rien ?
    Merci bcp ^^

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Bonjour,

    As-tu essayés de faire du pas à pas ds ton code, pour t'assurer que tu passes bien ds la boucle qui te permet d'enregistrer ?

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 12
    Points : 8
    Points
    8
    Par défaut
    J'ai fait du pas à pas, j'obtenais un certain nombre d'enregristrements dans mon Recordset, mais je viens de trouver le problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set oRst = oDb.OpenRecordset("SELECT " + Chr(39) + Champ + Chr(39) + " FROM [MaTable]", dbOpenDynaset)
    Il y a une erreur dans cette partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    " + Chr(39) + Champ + Chr(39) + "
    La solution a été de mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set oRst = oDb.OpenRecordset("SELECT * FROM [MaTable]", dbOpenDynaset)
    Et tout marche bien pour la suite

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

Discussions similaires

  1. Recordset Déclaration variable dynamique
    Par freddy52 dans le forum VBA Access
    Réponses: 2
    Dernier message: 15/03/2015, 07h52
  2. Recordset avec variable
    Par fafabzh6 dans le forum VBA Access
    Réponses: 6
    Dernier message: 08/01/2008, 15h15
  3. Probléme de recordset avec variable
    Par crovette51101 dans le forum VBA Access
    Réponses: 3
    Dernier message: 11/05/2007, 09h40
  4. Réponses: 12
    Dernier message: 14/06/2006, 09h50
  5. insérer les recordset d'un while dans une variable
    Par yoda_style dans le forum ASP
    Réponses: 4
    Dernier message: 31/03/2005, 10h01

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