IF il y a un nom dans la cellule A1 (cellule A1 ,,,,)

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 !

bloomby

XLDnaute Occasionnel
Bonjour à tous,

j'aimerais créer un IF ( dans la cellule A1 il y a l'un des noms de l'une des colonne M:R) ouvrir un msgbox avec msg d'alerte

Le problème c'est que dans la cellule A1 il y a plusieurs nom qui sont séparé par une ,

j'ai joint un fichier avec un exemple
merci
 

Pièces jointes

Re : IF il y a un nom dans la cellule A1 (cellule A1 ,,,,)

Bonsoir bloomby,

par exemple:

Code:
Sub alerte()
Dim Liste As Variant
Liste = Split([A1].Value, ",")
For i = LBound(Liste) To UBound(Liste)
If Not [M1:R1].Find(Liste(i), LookIn:=xlValues, lookat:=xlWhole) Is Nothing Then [A2].Value = "Alerte"
Next
End Sub
 
Re : IF il y a un nom dans la cellule A1 (cellule A1 ,,,,)

Salut Skoobi,
étant donnée que je n'aime pas ca quand c'est simple 😉
voici une modification que j'aimerais apporter à ton code:

La colonne A contien le nom des produits

donc au lieu de la cellule A1, ce sera la colonne B ( à partir de B2 ) qui contiendra les données à surveiller (,,,,,)

tout comme dans la macro précédente lorsqu'il y a signal
on inscrit dans la cellule (C1) Alerte mais en plus j'aimerais avoir la lettre ainsi que le nom du produit

je te joins donc un fichier qui permet de bien visualiser le concepte
merci de ton aide !
 

Pièces jointes

Re : IF il y a un nom dans la cellule A1 (cellule A1 ,,,,)

Re bonjour,

Je suppose que tu veux vérifier si au-moins une lettre (et pas plus car dans certains cas il y en a plusieurs) déclenche l'alerte, c'est ce que j'ai fais:

Code:
Sub test()
For Each cell In [M2:R2]
With Range("B2", [B65536].End(xlUp))
    Set Trouve = .Find(cell.Value, LookIn:=xlValues, lookat:=xlPart)
    If Not Trouve Is Nothing Then
        firstAddress = Trouve.Address
        Do
            If Trouve.Offset(0, 1).Value = "" Then Trouve.Offset(0, 1).Value = "Alerte - " & Trouve.Offset(0, -1).Value & " - " & cell.Value
            Set Trouve = .FindNext(Trouve)
        Loop While Not Trouve Is Nothing And Trouve.Address <> firstAddress
    End If
End With
Next
End Sub
 
- 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

Réponses
3
Affichages
181
Réponses
22
Affichages
1 K
Réponses
18
Affichages
723
Réponses
7
Affichages
724
Retour