VBA : comment gérer les cellules vide ds un prog

esftel

XLDnaute Occasionnel
Bonsoir le forum,

J'ai créé un petit programme VBA afin d'appliquer une couleur aux cellules avec des valeurs numériques et dates. Jusque là tout fonctionne.
Cependant losque la cellule est vide la couleur s'applique.

Je souhaiterais que pour les cellules vide il n'y ai aucune couleur.
Ou que mon prog ne tienne pas compte des cellules vides.

Merci de votre ou vos réponse.

Petit fichier joint pour exemple
 

Pièces jointes

  • Classeur1.xls
    38.5 KB · Affichages: 115
  • Classeur1.xls
    38.5 KB · Affichages: 105
  • Classeur1.xls
    38.5 KB · Affichages: 111

kjin

XLDnaute Barbatruc
Re : VBA : comment gérer les cellules vide ds un prog

Bonsoir,
Essaie comme ceci
Code:
Sub test()
n = ActiveSheet.UsedRange.Rows.Count

For i = 1 To n
  For c = 1 To 4
    m = Cells(i, c).Value
    Num = IsNumeric(m)
    d = IsDate(m)
        
    If Not IsEmpty(m) And Num = True Or d = True Then
    Cells(i, c).Interior.ColorIndex = 3
    Else
    Cells(i, c).Interior.ColorIndex = xlNone
    End If
  Next c
Next i

End Sub
A+
kjin
 
Dernière édition:

esftel

XLDnaute Occasionnel
Re : VBA : comment gérer les cellules vide ds un prog

Oups

Excuse, ca marche,

mon autre problème, c'est que ma cellule vide à déja une couleur que je souhaiterais garder.

hors dans la solution que tu me donne, la cellule est complètment vidé de toute mise en forme (couleur).

si tu as une solution pour ca,

merci encore pour ta réponse.
 

esftel

XLDnaute Occasionnel
Re : VBA : comment gérer les cellules vide ds un prog

ok,

dans un premier temps j'ai un tableau dont les cellules de trois colonnes ont déja un font de couleur.

je souhaiterais appliquer une couleur (jaune par rouge) pour les cellules (de ces trois colonnes) numériques et dates et garder la couleur initiale pour les autres (vide ou texte).

En somme, dans le fichier exemple que j'ai donné, applique une couleur jaune pour tout le tableau.
Ensuite en executant la procédure VBA les nombres et dates change en Rouge et les autres (vide ou texte) reste en jaune.

Et pour cela j'ai besoin de le traduire en VBA pour incorporer cette mise en forme dans une autre procédure. Mais bon ca c'est une autre histoire.

Encore un grand merci pour ta patience.

A+
esftel
 

esftel

XLDnaute Occasionnel
Re : VBA : comment gérer les cellules vide ds un prog

Salut kjin,

j'ai fini par trouver une solution à mon problème en imbriquant mon programme ci dessous à une autre procédure VBA que j'utilise pour mon tableau.

merci encore pour ta patience et ton aide.

a+
esftel

Sub Compta()
'Applique un font de couleur aux cellules numériques et dates.
Range("A1").Select
n = Range(Selection, Selection.End(xlDown)).Count

For i = 1 To n
For c = 31 To 34
m = Cells(i, c).Value
num = IsNumeric(m)
d = IsDate(m)
If num = True Or d = True Then Cells(i, c).Interior.Color = 13434879
If m = "" Then Cells(i, c).Interior.Color = 16777164
Next c
Next i
Call Annuler
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 487
Messages
2 088 825
Membres
103 971
dernier inscrit
abdazee