Bonjour à tous,
je cherche comment faire une formule avec plusieurs OU si ces cellules ne sont pas vides :
A7 - K7 - F9 - G11 - et I18
Je vous remercie de l'aide que vous m'apporterez
La fonction ESTVIDE(___) renvoie la valeur Vrai si la cellule est vide et faux si elle ne l'est pas.
Difficile de donner une réponse adéquate sans plus d'éclaircissements de ta part mais tu pourrais avoir qqchose comme :
=SI(OU(ESTVIDE(A7)=Faux;ESTVIDE(K7)=Faux; ......))
Autre indication au passage, si tu veux que toutes ces cellules ne soient pas vides, il te faut tester avec une condition ET et non pas un OU.
Bonjour xUpsilon, Santulud,
Je vous remercie mais cela ne fonctionne pas dans ma macro.
Ce que je souhaite c'est que si l'une de ces cellules est renseignée, ça mette un terme à la macro
Private Sub Worksheet_Change(ByVal Target As Range)
Bonjour job
Revenant sur ma demande je découvre ta seconde proposition, mais ne la comprenant pas, pourrais-tu me l'expliquer en détails Stp
En te remerciant.
Bonjour,
"Ce que je souhaite c'est que si l'une de ces cellules est renseignée, ça mette un terme à la macro"
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.Range("A7,K7,F9,G11,I18")) Is Nothing Then
If Not IsEmpty(Target) Then
--- Code pour que "ça mette un terme à la macro" (?) ---
End If
End If
End Sub
Bonjour Job75,
En effet, j'avais commencé par une union des Ranges puis j'ai pensé à simplifier en me trompant de syntaxe sur le Range "multi-area".
J'ai corrigé après avoir vérifié que ça ne marchait pas. J'aurais dû vérifier avant !
IsEmpty() s'applique aux constantes et aux formules. En l'occurrence, la condition énoncée par papy "si l'une de ces cellules est renseignée" est assez ouverte et, même si on peut parier qu'il pense à une constante, pourrait en théorie s'appliquer à la saisie d'une formule retournant n'importe quoi voire un texte vide.
On est sur un Worksheet_Change() pas sur un test des contenus comme sur les posts précédents.