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 :

Fonction IsNumeric et For Each _In _Next [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Femme Profil pro
    Etudiante
    Inscrit en
    Avril 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiante
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut Fonction IsNumeric et For Each _In _Next
    Bonsoir à tous!
    Je me permets de vous proposer un petit problème que j'ai du mal à résoudre:
    'Écrire une macro « changer_couleur » qui change de couleur les cellules sélectionnées (For Each In Next). Dans le cas où le contenu des cellules est une valeur numérique, Si le nombre est pair il doit être affiché en bleu, s'il est impair en rouge. Dans les autres cas, la macro ne fait rien.

    Voila ce que j'ai pu faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub changer_couleur()
    Dim Cell As Range
    Dim Nun, i
    For Each Cell In Range("A1:E10") 'normalement je ne dois pas définir les cellules mais pour l'instant je ne sais pas faire autrement.
    i = i + 1
    If Num = IsNumeric(Cell) Then 'je n'ai pas tenu compte du nombre pair ou imparire
    Cell.Interior.ColorIndex = 3
    End If
    Next
     
    End Sub
    Je vous remercie par avance pour votre aide
    Respectueusement

    Souad

  2. #2
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274

  3. #3
    Membre chevronné Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Points : 2 003
    Points
    2 003
    Par défaut
    Bonjour,
    une solution via vba et l'utilisation de isnumeric et de isempty, regarde dans l'aide à quoi correspond ces fonctions.

    La macro si dessous vérifie dans chaque cellule de la plage sélectionnée si elle n'est pas vide et si son contenu est un chiffre, puis elle vérifie si le chiffre est impair :
    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
    Sub changer_couleur()
    Dim Cell As Range, num As Long
     
    For Each Cell In Selection
      If Not IsEmpty(Cell) And IsNumeric(Cell) Then 'teste si la cellule n'est pas vide et si elle contient un nombre
        num = Cell.Value
     
          If (num And 1) Then 'teste si la variable num est impair
            Cell.Interior.ColorIndex = 3 'cellule rouge
          Else
            Cell.Interior.ColorIndex = 6 'cellule jaune
          End If
     
      End If
     
    Next
     
    End Sub
    A toi d'adapter si il y a besoin.
    Il doit y avoir mieux mais ça fonctionne.

  4. #4
    Membre à l'essai
    Femme Profil pro
    Etudiante
    Inscrit en
    Avril 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Etudiante
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Merci à tous pour vos réponses!!!

    Sincères salutation

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

Discussions similaires

  1. [XSLT 1.0] XSLT: utilisation de la fonction position() dans <for-each> imbriqués
    Par bernidupont dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 04/05/2011, 21h33
  2. for-each et traitement alternatif en fonction de la position
    Par Bernard Grosdoy dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 15/09/2005, 17h12
  3. fonction for each key .......
    Par trialrofr dans le forum ASP
    Réponses: 13
    Dernier message: 10/01/2005, 14h29
  4. utilisation de for each
    Par billoum dans le forum ASP
    Réponses: 5
    Dernier message: 19/03/2004, 15h30
  5. [VB6] For Each ... In ...
    Par Troopers dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 03/02/2003, 12h56

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