VBA Remplacer valeur selon couleur de celulle
Résolu
VBActor
-
melanie1324 Messages postés 1561 Statut Membre -
melanie1324 Messages postés 1561 Statut Membre -
Bonjour,
Je cherche une solution VBA pour résoudre le problème suivant : j'ai une zone de cellule qui est sélectionnée. A l'intérieur de celle-ci j'ai des cellules bleues, et des cellules blanches (sans aucun contenu pour les 2). J'aimerais que ma macro me remplace le vide ("") par des "1" uniquement pour les cellules blanches.
Pouvez-vous m'aider ?
Merci d'avance
Je cherche une solution VBA pour résoudre le problème suivant : j'ai une zone de cellule qui est sélectionnée. A l'intérieur de celle-ci j'ai des cellules bleues, et des cellules blanches (sans aucun contenu pour les 2). J'aimerais que ma macro me remplace le vide ("") par des "1" uniquement pour les cellules blanches.
Pouvez-vous m'aider ?
Merci d'avance
5 réponses
-
bonjour,
comment ta zone est elle sélectionnée??
Si c'est manuellement, je ne crois pas que ce soit pas possible.
par contre si la sélection peut se faire par la macro, je sais faire. -
Re,
essaie ca :
Sub SelectionEtConcatenation()
Dim Plage As Range, Cel As Range
Set Plage = Application.InputBox("Sélectionnez une plage !", "Sélection de cellules", Type:=8)
For Each Cel In Plage
If Cel.Interior.ColorIndex = xlNone Then
Cel.Value = 1
End If
Next
End Sub -
Je sélectionne ma zone comme suit :
Cells.Find("1° trimestre").Activate
ActiveCell.Offset(2, 0).Select
ActiveCell.CurrentRegion.Select
Ainsi la zone que je souhaite sélectionner est activée...et donc l'idée c'est de modifier uniquement les cellules blanches de cette zone.
Merci pour la réponse en tout cas, je vais tester ça -
Ca marche très bien mais comment puis-je faire pour ne pas que ça me pose la question de la zone à sélectionner (mais que ça me prenne automatiquement la zone qui est activée) ?
Merci -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Re,
alors le code est plutôt :
Cells.Find("1° trimestre").Activate
ActiveCell.Offset(2, 0).Select
Set tbl = ActiveCell.CurrentRegion
For Each cel In tbl
If cel.Interior.ColorIndex = xlNone Then
cel.Selection = 1
End If
Next