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 :

problème de format [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut problème de format
    Bonjour à tous,

    Je suis un débutant de VBA et j'ai un problème de format, je voulais changer les couleurs de cellules avec des conditions, mais il y a une erruer d'exécution 13 qui sort :

    a = Cells(19, i).Value
    b = Cells(19, j).Value

    PS: les valeurs de cellules sont en format pourcentage.

    merci d'avance vos aides



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub test()
    Dim i As Integer, j As Integer
    Dim a As Double, b As Double
    Sheets("menu").Select
    For i = 4 To 15
    j = 20
    a = Cells(19, i).Value
    b = Cells(19, j).Value
    If a > b * 1.05 Then Cells(19, i).Interior.ColorIndex = 3
    If a < b * 0.95 Then Cells(19, i).Interior.ColorIndex = 35
    j = j + 1
    Next i
    Range("a1").Select
    End Sub

  2. #2
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 30
    Par défaut
    Bonjour,

    Déjà je ne comprend pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    j = 20
    ' ......
    j = j + 1
    Dans la même boucle. j reviendra donc toujours à 20 au début de la boucle... Et ce, même si tu l'incrémentes juste avant la fin de celle-ci.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut
    merci de ta réponse, en fait, je voulais comparer les 24 valeurs en format pourcentage, les 24 valeurs sont en même ligne, mais pas en même colonne, tel que: Cells(19, 4) VS Cells(19, 20).......Cells(19, 15) VS Cells(19, 31)

  4. #4
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 30
    Par défaut
    Eh bien déjà, tu devrais mettre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    j = 20
    For i = 4 To 15
    Au lieu de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    For i = 4 To 15
    j = 20
    Parce qu'en l'état, j sera tout le temps égal à 20 sinon.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut
    le problème est qu'il y a tjs une erreur d'exécution 13 dans a = Cells(19, i).Value...

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2011
    Messages : 30
    Par défaut
    J'ai bien compris, mais tant qu'à faire si je vois une incohérence je la signale..

    As tu essayé en remplacant Cells par Range?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a = Range("S" & i).Value
    b = Range("S" & j).Value

  7. #7
    Membre Expert
    Avatar de pijaku
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Août 2010
    Messages : 1 817
    Billets dans le blog
    10
    Par défaut
    Bonjour,
    Si j'ai bien compris, tu veux comparer :
    la cellule Cells(19, 4) avec Cells(19, 20)
    la cellule Cells(19, 5) avec Cells(19, 21)
    la cellule Cells(19, 6) avec Cells(19, 22)
    ............ etc ................... jusqu'à
    la cellule Cells(19, 15) avec Cells(19, 31)

    C'est bien cela?

    Si oui, en me basant sur ton code essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test()
    Dim i As Integer, j As Integer
    Dim a As Double, b As Double
    Sheets("menu").Select
    For i = 4 To 15
        j = i + 16 'j est toujours égal à i + 16 quel que soit i
        a = Cells(19, i).Value
        b = Cells(19, j).Value
            If a > b * 1.05 Then Cells(19, i).Interior.ColorIndex = 3
            If a < b * 0.95 Then Cells(19, i).Interior.ColorIndex = 35
    Next i
    Range("a1").Select
    End Sub
    EDIT :
    L'erreur 13 due au type de variable peut être contournée en remplaçant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        a = Cells(19, i).Value
        b = Cells(19, j).Value
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        a = CDbl(Cells(19, i).Value)
        b = CDbl(Cells(19, j).Value)

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 59
    Par défaut
    OK, c'est réglé, merci à vous

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

Discussions similaires

  1. Problème de format de pixel
    Par charliejo dans le forum OpenGL
    Réponses: 7
    Dernier message: 21/03/2005, 11h45
  2. Problème de format de currency
    Par gandf dans le forum C++Builder
    Réponses: 5
    Dernier message: 31/01/2005, 13h36
  3. Réponses: 14
    Dernier message: 06/08/2004, 15h12
  4. [CR8] Problème de Format d'affichage
    Par khabch dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 19/02/2004, 14h10
  5. Problème de Format de date
    Par titititi007 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/06/2003, 08h19

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