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 :

MFC par VBA sur quatres cellules à droite [Toutes versions]


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    retraite
    Inscrit en
    Décembre 2012
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraite
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2012
    Messages : 38
    Points : 38
    Points
    38
    Par défaut MFC par VBA sur quatres cellules à droite
    Bonjour,
    Cette MFC par VBA m’intéresse mais je souhaite appliquer la couleur aux quatre cellules qui sont sur la droite de la cellule de référence « Cells(i, 1) ». Je n’y arrive pas pouvez vous m’aider ?
    MERCI

    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
    Sub MEF()
    Dim endofcolumn As Long
    endofcolumn = 500
    For i = 1 To endofcolumn
     Select Case Cells(i, 1).Value
     
        Case Is = "8"
       Cells(i, 1).Interior.ColorIndex = 3
        Case Is = "1"
        Cells(i, 1).Interior.ColorIndex = 10
        Case Is = "2"
        Cells(i, 1).Interior.ColorIndex = 20
        Case Is = "3"
        Cells(i, 1).Interior.ColorIndex = 28
        Case Is = "4"
        Cells(i, 1).Interior.ColorIndex = 44
        Case Is = "5"
        Cells(i, 1).Interior.ColorIndex = 45
        Case Is = "6"
        Cells(i, 1).Interior.ColorIndex = 50
        Case Is = "7"
        Cells(i, 1).Interior.ColorIndex = 55
     
        '...et ainsi de suite
     End Select
     Next i
    End Sub

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Bonjour,

    Essais comme cela, en utilisant offset pour te décaler

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Case Is = "8"
      Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 3

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    retraite
    Inscrit en
    Décembre 2012
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraite
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2012
    Messages : 38
    Points : 38
    Points
    38
    Par défaut MFC par VBA sur quatres cellules à droite
    Merci beaucoup Jérôme d’avoir pris sur ton temps pour te pencher sur mon problème.
    Ta solution fonctionne.
    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
    Sub MEF()
    Dim endofcolumn As Long
    endofcolumn = 700
    For i = 1 To endofcolumn
     Select Case Cells(i, 1).Value
     
     
     
        Case Is = "1"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 10
     
     
        Case Is = "2"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 20
     
        Case Is = "3"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 28
     
        Case Is = "4"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 44
     
        Case Is = "5"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 45
     
        Case Is = "6"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 50
     
        Case Is = "7"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 55
     
        Case Is = "8"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 3
     
        Case Is = "9"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 24
     
        Case Is = "10"
        Range(Cells(i, 1).Offset(0, 1), Cells(i, 1).Offset(0, 4)).Interior.ColorIndex = 7
     
        '...et ainsi de suite
     End Select
    Next i
    End Sub
    Maintenant je n’arrive pas à faire référence à “ #N/A “
    J’explique si j’écris Case Is = "#N/A " cela ne fonctionne pas (erreur d'exécution '13: Incompatibilité de Type.) comment faire référence à #N/A ?
    Et je vais chercher à modifier les caractères en plus des cellules.
    Merci encore

  4. #4
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Avec un test avant le select Case

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    If Application.WorksheetFunction.IsError(Cells(i, 1)) = True Then
        'Gestion de l'erreur
    Else
         Select case 
          ....
    End If

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    retraite
    Inscrit en
    Décembre 2012
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraite
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2012
    Messages : 38
    Points : 38
    Points
    38
    Par défaut MFC par VBA sur quatres cellules à droite
    Merci cela fonctionne au pas à pas il saute les cellules en "#N/A".

    Merci merci

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/01/2012, 13h42
  2. [XL-2010] MFC par macro sur valeurs en double dans 2 colonnes
    Par FIMO7 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 04/03/2011, 23h09
  3. [Toutes versions] Insérer Pied de page par vba sur dernière page uniquement
    Par vieuxmonsieur dans le forum VBA Word
    Réponses: 11
    Dernier message: 15/05/2010, 21h24
  4. [XL-2000] TCD - Voir détail par VBA sur liste de choix
    Par Carambar dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 11/10/2009, 15h51

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