Je souhaiterai,avec la mise en forme conditionnelle ne pas pouvoir utiliser dans une cellule excel,le caractere "espace" de la barre d'espace.Celui-ci me donne une indication fausse d'information.
Private zouzou As Range Private Sub Worksheet_SelectionChange(ByVal Target As Range) If zouzou Is Nothing Then Set zouzou = Target: Exit Sub If InStr(zouzou.Text, " ") > 0 Then zouzou.Interior.Color = vbRed zouzou.Activate Else zouzou.Interior.Color = vbWhite Set zouzou = Target End If End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'opterai plus vers une formule du style:si(cellule contient espace)elle passe au rouge.
Private colonne_a_proteger As Integer, couac As Boolean Private Sub Worksheet_Activate() colonne_a_proteger = 3 ' <<<<<<<<========= ici le numero de colonne à protéger With Columns(colonne_a_proteger) .FormatConditions.Add Type:=xlTextString, String:=" ", TextOperator:=xlContains .FormatConditions(.FormatConditions.Count).SetFirstPriority With .FormatConditions(1).Font .Color = vbWhite '-16383844 .TintAndShade = 0 End With With .FormatConditions(1).Interior .PatternColorIndex = xlAutomatic .Color = vbRed '13551615 .TintAndShade = 0 End With .FormatConditions(1).StopIfTrue = True End With End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not couac Then Worksheet_Activate: couac = True Static zouzou As Range If zouzou Is Nothing Then Set zouzou = Target: Exit Sub If InStr(zouzou.Text, " ") > 0 And zouzou.Column = colonne_a_proteger Then zouzou.Activate For i = 1 To 4 Beep deb = Timer Do While Timer < deb + 0.1 DoEvents Loop Next Else Set zouzou = Target End If End Sub