Problème sur MACRO excel 2010

alexisexcel

XLDnaute Nouveau
Bonjour,

J'ai un porblème avec une macro excel.

C'est assez simple.
J'ai un fichier avec une colonne (colonne D ici dans le fichier feuille "DATA") avec des DATA plus un onglet avec des mots clès.

Je dois rechercher dans la colonne D (onglet "DATA") si certains mots clès se trouvent dedans.
Sur l'onglet "Mots clés", la colonne A me permet de faire cette recherche et grâce à cette colonne, je vais afficher en colonne F -G-H-I de l'onglet "DATA" les données faisant références à la colonne D de DATA.

par contre je souhaite rajouter au fur et à mesure des analyses que je fais des lignes dans l'onglet "mots clés" donc il faut que je recherche sur le maximum de ligne excel.


Voici mon fichier.
si quelqu'un veut bien m'aider SVP.

Merci
Alex
 

Pièces jointes

  • MACRO-2015-2-2-TEST-200LIGNES.xlsm
    169.2 KB · Affichages: 29
  • MACRO-2015-2-2-TEST-200LIGNES.xlsm
    169.2 KB · Affichages: 29
  • MACRO-2015-2-2-TEST-200LIGNES.xlsm
    169.2 KB · Affichages: 31

alexisexcel

XLDnaute Nouveau
Re : Problème sur MACRO excel 2010

Merci beaucoup.
Par contre tu as fait une autre macro c'est ça?
Pour ma culture tu pourrais m'expliquer ce que tu as fait?

Par contre, si je veux rechercher un mot comme:
"Four" dans une groupe de mot qui se trouve dans DATA, il devrait afficher dans la feuille DATA ce qu'il faut alors que là il n'affiche rien....
Car le truc les mots clès dans un mot ou groupe de mot même si il y a quelques choses avant ou après et d'indiquer ce qu'il faut dans les autres colonnes.

Je pense que le résultat n'est pas très loin.
 

gosselien

XLDnaute Barbatruc
Re : Problème sur MACRO excel 2010

Je vais commenter...
tu verras ensuite à améliorer:)
mais si on cherche plus loin que dans la colonne A, ce n'est plus le même résultat et je n'ai pas le temps de faire la suite.

je ne comprends pas ta question:

soit tu cherches "four" en colonne A de "data" soit tu cherches dans l'autre feuille

edit:

Sub Chercher()
Set ws1 = Sheets("data") ' mémoriser les différentes feuilles en un mot plus court et plus facile à selectionner (entre autres)
Set ws2 = Sheets("motscles")
ws1.Activate
Set ZONE = ws1.Range("D5:d" & Range("D65000").End(xlUp).Row) ' zone des mots à chercher
ws2.Activate
With ws2.Range("A3:A" & Range("A65000").End(xlUp).Row) 'de la ligne 3 à la dernière occupée, colonne A
For Each cell In ZONE ' boucler sur la zone
Set c = .Find(What:=cell, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
firstaddress = c.Address
Do
cell.Offset(0, 2).Value = c.Offset(0, 1).Value ' copie en colonne voisines (E-F-G-H)
cell.Offset(0, 3).Value = c.Offset(0, 2).Value
cell.Offset(0, 4).Value = c.Offset(0, 3).Value
cell.Offset(0, 5).Value = c.Offset(0, 4).Value
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstaddress
End If
Next
End With
End Sub
 
Dernière édition:

alexisexcel

XLDnaute Nouveau
Re : Problème sur MACRO excel 2010

Merci pour les explications.

En fait quand je mets:
" Je recherche le mot "Four" (qui se trouve dans la feuille "mots clé") dans un groupe de mot qui se trouve dans DATA (colonne D)....
en fait c'est chercher un mot clé qui se trouve dans la feuille "mots clé" dans une phrase ou groupe de mot qui se trouve en colonne D de la feuille DATA.
Ici dans le résultat obtenu, j'ai l"impression que ca ne trouve que les "mots clés" si et seulement si ils sont identiques aux mots dans la colonne D de la feuille DATA.

Je m'explique:

Tu as le mot clé dans "Four " dans la feuille "mots clé" et tu as dans la colonne D dans la feuille DATA "Four vapeur panne".
Dans cette exemple j'ai l'impression qu'il n'arrive pas à trouver qu'il y a le mot "Four" dans la phrase.

Merci.
 

Discussions similaires

  • Résolu(e)
Microsoft 365 Code de tri
Réponses
22
Affichages
374
M
Réponses
9
Affichages
502
Maikales
M

Statistiques des forums

Discussions
312 389
Messages
2 087 898
Membres
103 675
dernier inscrit
axona