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 :

Probléme LOOP dans une Module access


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Collégien
    Inscrit en
    Décembre 2016
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2016
    Messages : 53
    Points : 21
    Points
    21
    Par défaut Probléme LOOP dans une Module access
    Bonjour,

    Jai besoin de résiliaire une module pour faire des transférer des donner a partir d'une table horizontale vers une autre vertical.

    J'ai essayer de développé un module déjà communiqué dans ce site, mais le module ce bloque dans la partie Loop.

    J'ai attacher la MBD test, est ce que j'ai peut avoir une support:

    Pour faire le Transfer des donner juste ce qui ont dans ma requête.

    De éliminer les alphabets, et de remplacer la point par le vide est garder juste les numéros correcte.

    Nom : 2018-01-02.png
Affichages : 188
Taille : 167,0 Ko

    Merci de votre support.

    Salutations

    dellal
    Fichiers attachés Fichiers attachés

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    le message d'erreur est très clair: vous avez un "loop" sans le "Do", ou "Do While ...."

  3. #3
    Membre à l'essai
    Homme Profil pro
    Collégien
    Inscrit en
    Décembre 2016
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2016
    Messages : 53
    Points : 21
    Points
    21
    Par défaut Probléme LOOP dans une Module access
    Bonjour,

    J'ai essayer de modifier le code, mais maintenant le code ce bloque dans l'instruction If:

    Nom : 2018-01-02 (1).png
Affichages : 316
Taille : 18,1 Ko
    Nom : 2018-01-02 (2).png
Affichages : 263
Taille : 57,1 Ko

    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
    Public Sub AlimenterTable()
      Dim oRst As Recordset
      Dim N°_denvoi As String
      Dim Goods_total As String
      Dim Shipment_cost As String
      Dim Insurance As String
      Dim Cost_Total As String
      Dim Gross_Weight As String
      Dim Net_weight As String
      Dim Number_of_parcels As String
      Dim sql As String
      Set oRst = CurrentDb.OpenRecordset("Table1")
      oRst.MoveFirst
      Do While Not oRst.EOF
       If oRst(1) Like "Goods*" Then
            Goods_total = oRst(1)
            oRst.MoveNext
        End If
        Shipment_cost = oRst(1)
        oRst.MoveNext
        Insurance = oRst(1)
        oRst.MoveNext
        Cost_Total = oRst(1)
        oRst.MoveNext
        Gross_Weight = oRst(1)
        oRst.MoveNext
        Net_weight = oRst(1)
        oRst.MoveNext
        Number_of_parcels = oRst(1)
        oRst.MoveNext
        N°_denvoi = oRst(1)
        sql = "INSERT INTO InvTeToChk ( Goods_total, Shipment_cost, Insurance,Cost_Total,Gross_Weight,Net_weight,Number_of_parcels,N°_d'envoi ) " _
                & "SELECT """ & Goods_total & """ AS Expr1 (Like ""Goods total*""), " _
                & """" & Shipment_cost & """ AS Expr2 (Like ""Shipment cost*""), " _
                & """" & Insurance & """ AS Expr3 (Like ""Insurance*""), " _
                & """" & Cost_Total & """ AS Expr4 (Like ""Total*""), " _
                & """" & Gross_Weight & """ AS Expr5 (Like ""Gross Weight*""), " _
                & """" & Net_weight & """ AS Expr6 (Like ""Net weight*"")), " _
                & """" & Number_of_parcels & """ AS Expr7 (Like ""Number of parcels*"")," _
                & """" & N°_denvoi & """ AS Expr8 (Like ""N° d'envoi*"");"
        DoCmd.SetWarnings False
        DoCmd.RunSQL sql
        DoCmd.SetWarnings True
        oRst.MoveNext
    Loop
    sortie:
      oRst.Close
      Set oRst = Nothing
    End Sub
    Fichiers attachés Fichiers attachés

  4. #4
    Membre à l'essai
    Homme Profil pro
    Collégien
    Inscrit en
    Décembre 2016
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Collégien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2016
    Messages : 53
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par dellalyoussef Voir le message
    Bonjour,

    J'ai essayer de modifier le code, mais maintenant le code ce bloque dans l'instruction If:

    Nom : 2018-01-02 (1).png
Affichages : 316
Taille : 18,1 Ko
    Nom : 2018-01-02 (2).png
Affichages : 263
Taille : 57,1 Ko

    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
    Public Sub AlimenterTable()
      Dim oRst As Recordset
      Dim N°_denvoi As String
      Dim Goods_total As String
      Dim Shipment_cost As String
      Dim Insurance As String
      Dim Cost_Total As String
      Dim Gross_Weight As String
      Dim Net_weight As String
      Dim Number_of_parcels As String
      Dim sql As String
      Set oRst = CurrentDb.OpenRecordset("Table1")
      oRst.MoveFirst
      Do While Not oRst.EOF
       If oRst(1) Like "Goods*" Then
            Goods_total = oRst(1)
            oRst.MoveNext
        End If
        Shipment_cost = oRst(1)
        oRst.MoveNext
        Insurance = oRst(1)
        oRst.MoveNext
        Cost_Total = oRst(1)
        oRst.MoveNext
        Gross_Weight = oRst(1)
        oRst.MoveNext
        Net_weight = oRst(1)
        oRst.MoveNext
        Number_of_parcels = oRst(1)
        oRst.MoveNext
        N°_denvoi = oRst(1)
        sql = "INSERT INTO InvTeToChk ( Goods_total, Shipment_cost, Insurance,Cost_Total,Gross_Weight,Net_weight,Number_of_parcels,N°_d'envoi ) " _
                & "SELECT """ & Goods_total & """ AS Expr1 (Like ""Goods total*""), " _
                & """" & Shipment_cost & """ AS Expr2 (Like ""Shipment cost*""), " _
                & """" & Insurance & """ AS Expr3 (Like ""Insurance*""), " _
                & """" & Cost_Total & """ AS Expr4 (Like ""Total*""), " _
                & """" & Gross_Weight & """ AS Expr5 (Like ""Gross Weight*""), " _
                & """" & Net_weight & """ AS Expr6 (Like ""Net weight*"")), " _
                & """" & Number_of_parcels & """ AS Expr7 (Like ""Number of parcels*"")," _
                & """" & N°_denvoi & """ AS Expr8 (Like ""N° d'envoi*"");"
        DoCmd.SetWarnings False
        DoCmd.RunSQL sql
        DoCmd.SetWarnings True
        oRst.MoveNext
    Loop
    sortie:
      oRst.Close
      Set oRst = Nothing
    End Sub

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Qu'est supposé faire oRst(1) ?

    Si tu souhaites avoir accès à un des champs du recordset il faut mettre quelque chose comme :

    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oRst.fields("NomTonChamp")
    ou

    Note dans ce cas "NonTomChamp" ou 1 peuvent être remplacé par une variable qui contient le nom du champ ou le numéro d'index.
    La solution avec le numéro d'index n'est recommandée que si tu traites tous champs car sinon, tu pourrais avoir une mauvaise surprise si quelqu'un décidait de déplacer le champ.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

Discussions similaires

  1. Problème : insertion dans une BDD ACCESS avec VB
    Par Dorni dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 19/05/2009, 14h35
  2. Réponses: 3
    Dernier message: 29/03/2008, 11h36
  3. Débutant: problème d'insertion dans une BD access
    Par nnj dans le forum Accès aux données
    Réponses: 1
    Dernier message: 04/10/2006, 09h49
  4. Problème d'insertion dans une table Access
    Par tribaleur dans le forum ASP
    Réponses: 21
    Dernier message: 27/06/2006, 08h20
  5. [VB6]Problème dajout dans une Table Access à cause des group
    Par bb62 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 01/02/2006, 10h06

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