Recherche automatique d’un groupe de mots dans une cellule

Bonjour,

J’aimerai savoir si quelqu’un peux m’aider.

J’ai un fichier sous Excel 2010 compose de plus 100.000 lignes sur plus 10 colonnes.

J’aimerais trouver une solution (autre que d’utiliser le mode « recherche » d’Excel) pour le problème suivant :

En sélectionnant une colonne précise, il faudrait que toutes les cellules, de cette colonne, ou apparaisse 1 ou plusieurs mots soit automatiquement transformée de fond blanc avec police noir en fond noir avec police blanche.

J’espère avoir été claire dans ma demande

Par avance merci

axel

Bonjour à tous, Forum,

Il me semble qu'une Mise en Forme Conditionnelle devrait répondre à ton besoin. Il nous faudrait, en retour, un bout de fichier avec la colonne concernée et nous dire sur quels mots il faut le changement de couleur...

A te relire.

Re-

Vous trouverez ci-joint 2 fichiers (exemple-1 et exemple-2)

  • exemple-1 est la structure de la base Excel
  • exemple-2 est un exemple des mots a chercher dans la collone (N intitulé "Annonces") d'un tableau excel (exemple-1)

Les cellules de la collone (N intitulé "Annonces") de l'exemple-1 comportant les mots de l'exemple-2 doivent apparaitre (fond noir sur police blanche)

Pour info je suis sous office 2010

Merci de votre interet a mon probleme

Axel

-- 30 Juin 2010, 11:40 --

Re-

J'ai oublier de signaler que la liste de mot a recherhcer et assez longue environ 100 mots differents

merci

desole pour cet oblie qui est de taille

Axel

-- 30 Juin 2010, 15:02 --

pourriez-vous m'aider

amicalement

74exemple-2.docx (12.89 Ko)
134exemple-1.xlsx (13.92 Ko)

Bonjour

Je ne sais pas faire une seconde boucle intégrée. un pro VBA te feras surement cela

En attendant, une solution (un peu fastidieuse) qui fonctionne.

Cordialement

124exemple-1.zip (21.84 Ko)

Bonjour,

Regarde le fichier joint...

Les codes :

Sub colorie()
Dim Cel As Range
Dim Fd As Worksheet, Fc As Worksheet
Dim FirstAddress As String
Dim C As Range

Set Fd = Sheets("Feuil1")
Set Fc = Sheets("Feuil2")
Application.ScreenUpdating = False
For Each Cel In Fc.Range("A1:A" & Fc.[A65000].End(xlUp).Row)
    With Fd.Columns(14)
        Set C = .Find(Cel, LookIn:=xlValues, LookAt:=xlPart)
        If Not C Is Nothing Then
            FirstAddress = C.Address
            Do
                With C
                    .Interior.ColorIndex = 1
                    .Font.ColorIndex = 2
                End With
                Set C = .FindNext(C)
            Loop While Not C Is Nothing And C.Address <> FirstAddress
        End If
    End With
Next Cel
End Sub

Sub normal()
With Columns(14)
    .Interior.ColorIndex = xlNone
    .Font.ColorIndex = 0
End With
End Sub

Bonne journée

81colorie.zip (16.47 Ko)

Bonjour cousinhub

Nul doute qu'au frais sous les bougainvillées du pacifique, on travaille mieux que chez nous avec 32°.

Cordialement

Bonjour

Sur le code d'Amadéus, ma petite boucle à moi ...

Amicalement

Nad

Bonjour,

je déterre ce poste car il correspond exactement à ce que je souhaite faire.

J'ai réussi à changer la colonne concernée dans le code du fichier "copie de exemple.xls".

Par contre dans mon cas comme vous pouvez le constater dans le fichier ci joint:

29testselection.xlsm (13.64 Ko)

je souhaite effectuer cette sélection sur une liste de numéro de client et quand je teste, il me fait la recherche par nombre et nom par chiffre complet. et du coup, toutes mes cases sont noirs.

Je ne sais pas non plus comment intégrer les boutons d'activation dans mon classeur.

Une telle macro m’éviterais d'effectuer de longues séances de recherche et d'encodage ,

je compte sur vous pour m'aider .

D'avance merci

Bonjour

Si j'ai bien compris une simple Mise En Forme Conditionnelle suffit

A tester

waouw, c'est tout a fait ça, dans une base de donnée plus longues j'effectuerai des recherche simultanee de cette manière.

Peux tu m'expliquer ton raisonnement afin que je puisse adapter ta mise en forme conditionnelle a d'autres colonnes ou classeurs....

merci

Bonsoir

fredattack a écrit :

Peux tu m'expliquer ton raisonnement

Très simple

Une fonction NB.SI() qui compte dans une plage le nombre de fois où une donnée est présente, si le résultat est supérieur à 0 on applique la MEFC --> Coloriage de' la cellule

Regardes l'aide de la fonction NB.SI()

ok pour cette fonction, mais quid de la fonction page 2?(zone nommée)

quand j'essaie de retranscrire cette MEFC dans mon tableau, ça ne fonctionne pas...

je suis complètement autodidacte avec excel( google et les forum m'ont tout appris), mais j'adore, et je constate qu'il me reste beaucoup à apprendre et c'est ce qui rends excel encore plus passionnant...

Bonjour

Ah cette zone nommée

1)Pour simplifier la formule de la MEFC

2)Une réminiscence des MEFC avec XL 2003 - On pouvait pas ulitiliser dans la formule le nom d'une autre page

Il faut aller dans l'onglet "Formules" ---> Gestionnaire des noms

Si tu ne sais pas t'en servir pour nommer une plage de cellules, on va simplifier le problème

Tu modifies la formule de la MEFC

Avant

=NB.SI(Numéros;C2)>0

Après

=NB.SI(Feuil2!$A:$A;C2)>0

Le résultat est le même mais tu n'as plus besoin de la zone nommée (alors elle est pas belle la vie ?)

HOULALALALA!!!!!!! et bien là, tu change ma vie!!!!! quel bonheur, je vais économiser +- 25% de mon temps d'encodage!!!!

c'est exactement ce que je cherchais...

Maintenant,en complément, je souhaite effectuer la formule en sens inverse et mettre en évidence les cellule de la feuille 2 qui ne se trouve pas dans la feuille 1 colonne c:

=NB.SI(feuil1!$c:$c;a2)<>0

ça ne fonctionne pas, pq???

merci

Bonjour

Fournis ton fichier avec ce que tu as fait

Désolé,

voici le fichier:

Sur la feuille 1 ta MEFC fonctionne, et sur la feuille 2 j'aimerai que se colore en rouge (comme illustré) les cellules ne se trouvant pas sur la feuil1 colonne c.

merci

Bonjour

A tester

Parfait, merci beaucoup..... Super sympa

Y a t il un moyen de protéger le classeur de manière à ce que si je venais à ajouter des lignes ou colonnes, mes MEFC continue de fonctionner et s'adapte en fonction de.

j'ai vu qu'en cas de renommage de feuille, il adaptait automatiquement par contre si j’insère des lignes il ne fonctionne plus et je dois modifier la mefc.

Quoi qu'il en soit, je peux maintenant signaler le poste comme résolu, et encore merci...

Bonjour

Tu peux protéger mais tu seras obligé de déprotéger lors d'ajout ou de suppression de données

Normalement si la suppression/l'insertion se fait dans la zone de MEFC , je pense qu'elle s'adapte, sinon le pinceau

Rechercher des sujets similaires à "recherche automatique groupe mots"