> Tous les forums > Forum Bureautique
 Recherche cellules contenant un mot précisSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
fth
  Posté le 06/01/2008 @ 23:46 
Aller en bas de la page 
Petit astucien

Bonsoir et Excellente année 2008 à tous,

Je me tourne vers vous pour essayer de résoudre une colle que l'on m'a posée il y a quelques temps.

Prenons l'exemple que j'ai 3 cellules contenant les mots ou phrases suivantes : le mystère - elle m'a dit - il bricole

J'ai une petite macro qui me permet, via une InputBox, de trouver les cellules contenant un mot : par exemple je fais une recherche pour trouver les cellules contenant le mot "le"

A ma connaissance, dans la fonction Find, je ne peux indiquer que les paramètres :

  • soit LookAt:=xlWhole et là forcément il ne me trouve rien
  • soit LookAt:=xlPart et là il va me trouver : le mystère - elle m'a dit - il bricole

Alors que comme résultat de ma recherche, je ne souhaiterais obtenir que : le mystère

Ce qui me fait penser que finalement il ne cherche pas un mot mais une chaîne de caractère, je me suis donc dit d'ajouter un bout de code permettant de vérifier si à gauche ou à droite de la chaîne de caractères trouvée, se trouve un caractère autre qu'un espace.

Cela fait plusieurs jours que j'essaye mais je ne trouve pas la solution.

D'abord, cela est-il réalisable ? Si oui, quelqu'un pourrait-il me mettre sur la piste ? A moins qu'il existe une autre forme de la fonction Find que j'ignore ?

Merci de vous être arrêté sur ce post et au plaisir de vous relire.

Publicité
galopin01
 Posté le 07/01/2008 à 08:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

bonjour,

Effectivement Excel est un peu plus limité que Word dans le domaine de la recherche. Normal c'est un tableur...

J'ai déjà traité abondament la recherche de string sous toute ses formes sur Mongallet.

grosso poto il suffit de spliter chaque cellule dans un array et de tester chaque élément de l'array.

Une démo sur ce sujet et le fil qui en parle.

Une autre démo sur la même problématique et le lien vers ce sujet

Bonne lecture !

A+

galopin01
 Posté le 07/01/2008 à 09:15 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Dans ton cas c'est beaucoup plus simple si tu ne recherches qu'un mot : Tu n'auras qu'un seul array à parcourir.

For each cellule in selection...
Stocker cellule dans l'Array
Passer en revue chaque élément de l'Array pour voir si tu retrouves ton String
Next...

A+



Modifié par galopin01 le 07/01/2008 10:09
fth
 Posté le 07/01/2008 à 09:36 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour Galopin,

oufti...j'aurais pu encore chercher longtemps, ça m'a l'air beaucoup plus complexe que je ne le pensais, je regarde tout ça attentivement ce soir et te dirai quoi d'ici...quelques jours, le temps que j'arrive à comprendre et à adapter le code pour mon cas.

Merci et @+

galopin01
 Posté le 07/01/2008 à 10:08 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bah ! ça occupe...

Je te le fait en propre :

Sub test()
MotAChercher = "le"
'(sensible à la casse)
For Each o In Selection
'Mémorise la valeur de la cellule
z = Trim(o.Value)
'Charge un tableau (Array) des mots de l'occurence
Arr = Split(z, " ")
'Pour chaque élément de l'Array
For j = 0 To UBound(Arr)
If Arr(j) = MotAChercher Then
o.Select
Exit For
End If
Next
Next
End Sub

fth
 Posté le 07/01/2008 à 11:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

aaah oui vu comme ça c'est déjà beaucoup plus simple

J'ai pu facilement l'adapter à ma recherche sur plusieurs feuilles et récupérer les données trouvées dans une textbox

Merci pour ton aide

@+

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
GratuitJeu PC Faeria gratuit
Valable jusqu'au 27 Février

Epic Game Store offre actuellement le jeu PC Faeria. Faeria est un jeu de cartes. Construisez des decks incroyables et façonnez le champ de bataille dans des combats épiques. Élevez des montagnes, bâtissez des forêts, remplissez des lacs, ou maîtrisez le sable du désert. Tracez votre propre chemin vers la victoire.


> Voir l'offre
13,88 €Carte mémoire microSDXC UHS-I U3 SanDisk Extreme 64 Go (jusqu'à 160 Mo/s) à 13,88 €
Valable jusqu'au 05 Mars

Amazon fait une promotion sur la carte mémoire microSDXC UHS-I U3 SanDisk Extreme 64 Go qui passe à 13,88 €. Cette carte mémoire offre des vitesses jusqu'à 160 Mo/s et est idéale pour les téléphones, caméras et appareils photo HD. Elle est compatible GoPro, Switch et est accompagnée d'un adaptateur SD.


> Voir l'offre
89,99 €Disque dur externe portable Seagate Expansion 4 To USB 3.0 à 89,99 €
Valable jusqu'au 26 Février

Amazon fait une promotion sur le disque dur externe portable Seagate Expansion d'une capacité de 4 To à 89,99 € livré gratuitement alors qu'on le trouve ailleurs à partir de 120 €. Ce disque dur externe portable au format 2,5 pouces dispose d'une interface USB 3.0 compatible USB 2.0. Une excellente affaire pour ce disque dur qui offre des débits de 115 Mo/s. Il n'est pas soudé et est donc démontable si vous souhaitez le réutiliser ailleurs (console, NAS, PC).


> Voir l'offre

Sujets relatifs
Graphique avec cellules contenant du texte
recherche d'un formaule EXCEL (comptage cellules )
Arrêt impossible de la sélection cellules
Recherche à telecharger Custom UI Editor
compter lignes d'un tableau dont toutes les cellules sont en couleur
Recherche écrans 14 ou 15 pouces
[Extraction dans cellules]
recherche la ligne et passe a la suivante
recherche v
Comment supprimer recherche Laoscript au démarrage Excel ?
Plus de sujets relatifs à Recherche cellules contenant un mot précis
 > Tous les forums > Forum Bureautique