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 :

[VBA-E2003] Colorier des cellule sélectionnée


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de 973thom
    Inscrit en
    Juin 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Juin 2004
    Messages : 132
    Par défaut [VBA-E2003] Colorier des cellule sélectionnée
    Bonjour à tous,

    et au passage félicitation pour le transfert sur le nouveau forum c'est plutot réussi

    Voilà pour moi : j'ai l'habitude de programmer en vba sous access mais je ne l'ai jamais fait sous excel et voilà la galère du débutant qui recommence.

    mon premier problème
    : J'aimerai créer un bouton qui, après un clic, me coloriera les cellules de mon tableurs que j'aurais préalablement sélectionnées. et ne j'ai absolument aucune idées sur la façon de procéder.

    Aussi j'imagine qu'il existe des codes pour chaque couleur donc si quelqu'un les a je le remercie d'avance de les poster sur le forum.

    A bientôt (oui oui je vais revenir vous embêter plus souvent désormais )

    Merci encore

    Thomas

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Regarde déjà à cette adresse si le code fourni par bbil te donne des idées

    http://www.developpez.net/forums/sho...cellule+select
    Tu nous diras ensuite sur quoi tu cales...
    A+

  3. #3
    Membre confirmé Avatar de 973thom
    Inscrit en
    Juin 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Juin 2004
    Messages : 132
    Par défaut
    Merci ouskel'n'or, j'étudie celà de suite et je vous tiendrai au courant..

  4. #4
    Membre confirmé Avatar de 973thom
    Inscrit en
    Juin 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Juin 2004
    Messages : 132
    Par défaut
    Woua yiailla !!!

    ça m'a l'air bien chaud tout ça... j'ai l'impression de na plus rien connaitre à la programation. vivement que je retourne sous access.

    Moi ce que je souhaite c'est :
    • vérifier si une sélection est active
    • changer la couleur des cellules sélectionnée
    Donc en gros : comment sait on s une sélection est courante ? (range ????) et comment modifie t-on celle ci ?

    Merci encore.

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu peux tester l'adresse de la cellule active dans le code de la feuille de calcul
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
     msgbox Target.address
    end sub
    A partir de là, tu testes l'adresse, si c'est la bonne, tu collories...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if Target.address = range(Cells(NoLigne,NoColonne)).address then
            Range(Target.address).Font.ColorIndex = 3
    endif
    C'est à toi de définir NoLigne, NoColonne et ColorIndex.
    Tu penses pouvoir t'en sortir ?

    Tu dis

  6. #6
    Membre confirmé Avatar de 973thom
    Inscrit en
    Juin 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Juin 2004
    Messages : 132
    Par défaut
    Décidément... je n'y comprend plus rien à la prog...

    Si je comprends ce que tu as écris, on ne peut pas connaitre les cellules sélectionnées car dans mon cas elle changeront tout le temps ....

    Ces cellules seraient donc ma cible (Target) ??

    Aussi peux tu m'expliquer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ByVal Target As Excel.Range
    C'est ma sélection ???

  7. #7
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    ben la sélection courante est contenu dans l'object selection tiens un peu de code plus approprié à ton probléme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Sub test()
    Dim c As Range
    If TypeName(Selection) = "Range" Then
    For Each c In Selection
     If c < 0 Then c.Interior.Color = vbRed
     If c > 10 Then c.Interior.Color = vbBlue
     If c = 100 Then c.Interior.Color = RGB(0, 255, 0)
    Next
    End If
     
    End Sub

  8. #8
    Membre confirmé Avatar de 973thom
    Inscrit en
    Juin 2004
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Juin 2004
    Messages : 132
    Par défaut
    Merci bbil, ça fonctionne à peu près

    Pouvez vous m'expliquer à quoi correspond la clause RANGE ??? Histoire que j'y vois un peu plus clair ?

    Merci

    thom

  9. #9
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Je suppose que tu veux placer ton bouton sur ta feuille. Auquel cas, ton code doit être placé dans le click du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub CommandButton1_Click()
        MsgBox ActiveCell.Address 'juste pour que tu aies une idée
    End Sub
    et le clic du bouton (deux clics sur le bouton en mode création) te place dans la feuille de code de la feuille de calcul
    Là, tu peux faire le test de bbil
    Citation Envoyé par qui
    tiens un peu de code plus approprié à ton probléme
    Merci bbil

    A+

Discussions similaires

  1. [XL-2002] Code VBA pour colorier des cellules à partir de plusieurs critères
    Par NoodleDS dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 04/11/2013, 22h05
  2. [VBA-E] Colorier des cellules
    Par GI_GI dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 24/01/2007, 22h47
  3. [VBA-E] Comparer des cellules
    Par lutin06 dans le forum Macros et VBA Excel
    Réponses: 34
    Dernier message: 28/04/2006, 16h24
  4. [VBA-E]Remplir des cellules vides par des 0
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 12/03/2006, 13h58
  5. [VBA-E]supprimer des cellules vide
    Par garn dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 13/02/2006, 11h56

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