J’ai un problème qui me semble simple mais sur laquelle je bloque totalement :
J’aimerais écrire quelque chose du style : If une cellule est vide Then valeur de cette cellule = “bleu” (par exemple)
Else = “vert”
Je pense devoir utiliser IsEmpty mais lorsque j’utilise IsEmpty sur une plage de donnée, la fonction cherche si TOUTE la plage est vide ou entièrement complète. (Il me semble). Hors j’aimerais qu’il me trouve si UNE cellule est vide sur ma plage.
Je ne cherche pas à savoir combien de cellule sont vides (il n'y en aura qu'une) ni où elle se trouve mais juste que la macro la trouve est lui attribue une valeur.
Est-ce possible ?
Merci par avance.
Solution
C
Compte Supprimé 979
Bonjour MrNathan58
Essaye ceci
VB:
Sub Test()
Dim Cel as Range
For Each Cel In Range("A1:E10")
If Cel.Value ="" then
Cel.Interior.Color = RGB(128,128,128)
End If
Next Cel
End Sub
Une question reste en suspend, veux-tu lui attribuer la valeur "Bleu" ou la couleur !?
Bonjour,
Je suis impressionné par la réactivité de ce forum c'est géniale !
ça marche ! je n'avais pas pensé à utiliser ="" XD
je cherche à lui attribuer la valeur "bleu" mais je vois comment faire à partir de la.
Merci beaucoup !
Et seriez vous comment faire pour fusionner les cellules avec la cellule vide d'en dessous.
If cel.value="" then
fusionne cellule vide et cellule du dessus. ?
Pour fusionner les cellules j'ai vu qu'il fallait utiliser:
ith Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Selection.Merge
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = True
End With
Mais ça ne marche pas.
J'imagine que c'est parceque je ne lui dit pas quoi fusionner.
Alors j'ai essayer de rajouter: Range("A1:A10") avant mais ducoup il me fusionne toutes mes cellules en une.
Est-il possible de préciser range((cellule vide).offset(-1)) ? j'ai essayé mais ça me met une erreur.
Merci par avance.