Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Comment différencier une cellule qui ne contient rien d'une cellule qui renvoie ""?

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

micky01

XLDnaute Occasionnel
Bonjour,
J'ai créé une macros qui protège ou déprotège les cellules suivant si elles sont vides ou qu'elles contiennent une information.

Quand je dis Si A1 <> "" Alors bloquer la cellule, ll ne la protège pas si la formule qu'elle contient renvoi "".
Comment dire "si une cellule contient quelque chose (meme si c'est une formule qui renvoie "")... si elle ne contient rien (ni formule, ni texte...)...

Merci de vos lumières

A plus
 
Re : Comment différencier une cellule qui ne contient rien d'une cellule qui renvoie

Bonjour le Forum,
Bonjour micky01,

une cellule qui contient un renvoi de formule "" n'est pas considérée comme vide par excel

il faut tester avec =si(estvide(A1)=vrais;......)

Cordialement
 
Re : Comment différencier une cellule qui ne contient rien d'une cellule qui renvoie

Salut Micky01, Jocelyn🙂, Pierre🙂, le Forum

Juste pour saluer mes amis 🙂 et te proposer cela: valable que si formule en A1 ET résultat de la Formule est ""

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, [A1]) Is Nothing Then
If Range("A1").HasFormula = True And Range("A1") = "" Then MsgBox "Formule en " & Target.Address & " = a vide"
End If
End Sub

A tester

Bonne Journée
 

Pièces jointes

Dernière édition:
Re : Comment différencier une cellule qui ne contient rien d'une cellule qui renvoie

Bonjour Micky01, Jocelyn, Pierre, Dull 🙂

Pour faire bon poids, et si Micky n'est pas satisfait c'est à désespérer :

Code:
Sub Test()
Dim cel As Range, ad As String
Set cel = ActiveCell 'à adapter éventuellement
ad = cel.Address(0, 0)
If IsEmpty(cel) Then
  MsgBox ad & " est vide..."
ElseIf cel.HasFormula Then
  MsgBox ad & " contient une formule renvoyant " & _
    IIf(cel.Text = "", "un texte vide...", "une valeur...")
Else
  MsgBox ad & " contient une constante " & _
    IIf(cel.Text = "", "de texte vide...", "...")
End If
End Sub
A+
 
Re : Comment différencier une cellule qui ne contient rien d'une cellule qui renvoie

Merci à vous pour ces réponses 🙂
La proposition de Dull me convient parfaitement 😉

Merci encore, vous êtes géniaux 😛
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…