XL 2019 Catégorie par mots clef

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 !

seb308

XLDnaute Nouveau
Bonjour,

j'ai un tableau Excel, qui me permet de faire mes compte bancaire, avec des catégorie en fonction des dépense effectuer.

Exemple: quand je vais faire mes course a Leclerc, je choisi, manuellement, d'attribuer la catégorie "course" a ma dépasse.

Je voudrais automatisé cela, sans macro (que je ne métrise pas)

En pièce jointe, un extrais de mon document, car un onglet "liste déroulante", dans cette anglet, en jaune, une ébauche de catégorie a automatisé.
Le bute, est d'automatisé l'attribution de catégorie, dans la colonne C de l'onglet "compte"

Merci à vous
 

Pièces jointes

Bonjour Seb, et bienvenu sur XLD,
En formules, ça va pas être coton,... si c'est faisable.
Alors en attendant un bon samaritain, un essai en PJ avec ... du code VBA.
Ca pourra toujours servir à de futurs lecteurs. 🙂
La catégorie s'inscrit dès qu'on écrit quelque chose en colonne D, c'est automatique.
Avec :
VB:
Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub                                   ' Si plusieurs cellules sélectionnées, on sort
    If Not Intersect(Target, [D:D]) Is Nothing Then                     ' Si cellule cliquée est en colonne D
        Dim DL%, i%, Cat
        DL = Sheets("liste déroulante").Range("E65500").End(xlUp).Row   ' Calcule dernière cellule de la liste déroulante
        Cat = Sheets("liste déroulante").Range("E2:F" & DL)             ' On met la liste dans un tableau pour aller plus vite
        For i = 1 To UBound(Cat)                                        ' Pour toutes les catégories
            If Cat(i, 2) <> "" Then                                     ' Si pas de mot clé, on ignore
                If LCase(Target) Like "*" & LCase(Cat(i, 2)) & "*" Then ' Si mot clé présent dans la cellule cliquée
                    Cells(Target.Row, "C") = Cat(i, 1)                  ' On met la catégorie en colonne C
                    Exit Sub                                            ' Et on sort
                End If
            End If
        Next i
    End If
End Sub
 

Pièces jointes

- 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
Retour