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 :

Erreur syntaxe code [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 14
    Par défaut Erreur syntaxe code
    Bonjour,

    Dans une colonne jour (C), je rentre une valeur de 1 à 10 qui correspond aux jours ouvrés sur 2 semaines (1=Lundi, 2=Mardi, ..., 5=Vendredi, 6=Lundi, ...). Dans une colonne heure (D), je rentre une valeur de 1 à 24.
    Je souhaite attribuer, dans une colonne (E), une valeur d'heure "brute" en fonction des valeurs de ces colonnes.
    Exemple :
    jour = 1 / heure = 5 => heure "brute" = 5
    jour = 2 / heure = 1 => heure "brute" = 25
    jour = 2 / heure = 10 => heure "brute" = 34
    Le soucis est que mon code indique la valeur 34 dans la colonne E (E5 à E9).

    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
     
    Dim i, j, k  As Integer
    Dim jour, heure As Range
     
    For Each jour In Feuil1.Range("C5:C9")
        For Each heure In Feuil1.Range("D5:D9")
                For i = 1 To 10
                    For j = 1 To 24
                        For k = 5 To 9
                            If jour = i And heure = j Then
                                Feuil1.Range("E" & k).Value = 24 * (i - 1) + j
                            End If
                        Next k
                    Next j
                Next i
        Next heure
    Next jour
    En vous remerciant.

  2. #2
    Membre éprouvé Avatar de Many31
    Profil pro
    Inscrit en
    Février 2007
    Messages
    198
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 198
    Par défaut
    Bonjour Normal puisque le dernier k vous fait aller sur les lignes... ce qui fait qu'il copie la même valeur sur les 4 lignes suivantes...

    Essayez ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For ligne = 5 To 9
        If Feuil1.Cells(ligne, 3) >= 1 And Feuil1.Cells(ligne, 3) <= 10 And Feuil1.Cells(ligne, 4) >= 1 And Feuil1.Cells(ligne, 4) <= 24 Then
            Feuil1.Cells(ligne, 5) = 24 * (Feuil1.Cells(ligne, 3) - 1) + Feuil1.Cells(ligne, 4)
        End If
    Next

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 14
    Par défaut
    C'est parfait. Merci beaucoup.

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

Discussions similaires

  1. Erreur syntaxe code xslt
    Par kcizth dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 17/12/2013, 13h38
  2. erreur syntax ou de code
    Par alen22 dans le forum JSF
    Réponses: 24
    Dernier message: 19/03/2011, 12h08
  3. erreur syntaxe dans le code
    Par Daniela dans le forum Access
    Réponses: 3
    Dernier message: 18/12/2006, 12h43
  4. erreur syntaxe dans requete
    Par dom - ien moutiers dans le forum Requêtes
    Réponses: 5
    Dernier message: 19/04/2004, 11h54
  5. [EXISTS] Version MySql ou erreur syntaxe ?
    Par Kimael dans le forum Requêtes
    Réponses: 5
    Dernier message: 01/04/2004, 17h30

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