Recherche de chaine depuis liste une cellule
Fermé
samari113
-
13 janv. 2011 à 17:27
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 - 14 janv. 2011 à 20:21
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 - 14 janv. 2011 à 20:21
A voir également:
- Recherche de chaine depuis liste une cellule
- Liste déroulante excel - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Aller à la ligne dans une cellule excel - Guide
- Chaine tnt gratuite sur mobile - Guide
- Liste déroulante en cascade - Guide
4 réponses
Zoul67
Messages postés
1959
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
30 janvier 2023
149
14 janv. 2011 à 00:44
14 janv. 2011 à 00:44
Difficile à comprendre...
Je suppose que c'est sous Excel. Tu veux utiliser des macros VBA ou non ?
Où affiches-tu le résultat de ton test (<il y a une chaîne de caractères de A présente dans ma cellule Bn>) ?
Un tableau à 2 entrées me paraît plus logique...En colonne A, ce qui est en colonne B dans ton exemple. Et en ligne 1 ton actuelle colonne A.
Je suppose que c'est sous Excel. Tu veux utiliser des macros VBA ou non ?
Où affiches-tu le résultat de ton test (<il y a une chaîne de caractères de A présente dans ma cellule Bn>) ?
Un tableau à 2 entrées me paraît plus logique...En colonne A, ce qui est en colonne B dans ton exemple. Et en ligne 1 ton actuelle colonne A.
Bonjour ,
déjà merci Zoul67 d'avoir répondu a mon poste.
oui en effet c'est sur excel . peut importe la méthode (Macro VBA ou fonction) l'essentiel c'est que je puisse réussir :) .
j'ai deux colonne A et B
A: contient des noms de serveur
b: Contient des alertes de ces serveurs
je voudrai mettre sur une colonne C le nom de serveurs qui figure dans chaque alerte .
Problématique : n'ayant pas le moyen de localiser par position ou se trouve la chaine qui contient le nom de serveur sur B , je me suis basé sur la colonne a qui contient une liste prédéfini de nom . mon idéé est une recherche sequentielle a partir de A sur sur C.
la fonction Recherchv me semble inadéquat pour ce genre de recherche.
qu'est ce que vous pouvez me proposer comme solution?
Merci pour votre soutien
déjà merci Zoul67 d'avoir répondu a mon poste.
oui en effet c'est sur excel . peut importe la méthode (Macro VBA ou fonction) l'essentiel c'est que je puisse réussir :) .
j'ai deux colonne A et B
A: contient des noms de serveur
b: Contient des alertes de ces serveurs
je voudrai mettre sur une colonne C le nom de serveurs qui figure dans chaque alerte .
Problématique : n'ayant pas le moyen de localiser par position ou se trouve la chaine qui contient le nom de serveur sur B , je me suis basé sur la colonne a qui contient une liste prédéfini de nom . mon idéé est une recherche sequentielle a partir de A sur sur C.
la fonction Recherchv me semble inadéquat pour ce genre de recherche.
qu'est ce que vous pouvez me proposer comme solution?
Merci pour votre soutien
Zoul67
Messages postés
1959
Date d'inscription
lundi 3 mai 2010
Statut
Membre
Dernière intervention
30 janvier 2023
149
14 janv. 2011 à 19:23
14 janv. 2011 à 19:23
Bonsoir,
Si la forme A,B,C est obligatoire, je pense qu'il est plus simple d'utiliser une macro.
J'ai la flemme de le taper en vba, mais je peux te donner l'algo :
1. recherche de la dernière ligne non vide en colonne A (boucle While --> derligne =?)
2. tant que la cellule de la colonne Bn n'est pas vide (boucle While)
listeserveurs=""
boucle For sur les lignes 1 à derligne
Si InStr() > 0 alors listeserveurs=listeserveurs & Chr(10) &
FinSi
Cells(n,3).Value=listeserveurs
FinFor
FinWhile
Bon courage
Si la forme A,B,C est obligatoire, je pense qu'il est plus simple d'utiliser une macro.
J'ai la flemme de le taper en vba, mais je peux te donner l'algo :
1. recherche de la dernière ligne non vide en colonne A (boucle While --> derligne =?)
2. tant que la cellule de la colonne Bn n'est pas vide (boucle While)
listeserveurs=""
boucle For sur les lignes 1 à derligne
Si InStr() > 0 alors listeserveurs=listeserveurs & Chr(10) &
FinSi
Cells(n,3).Value=listeserveurs
FinFor
FinWhile
Bon courage
eriiic
Messages postés
24601
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
25 novembre 2024
7 244
14 janv. 2011 à 20:21
14 janv. 2011 à 20:21
Bonsoir,
une proposition par formule :
en C1 :
=STXT(B1;MAX(SI(ESTERREUR(CHERCHE($A$1:$A$11;B1));0;CHERCHE($A$1:$A$11;B1)));7)
formule matricielle à valider par shift+ctrl+entrée
Pour ne pas doubler la longueur de la formule #VALEUR! est retourné si aucun serveur n'est trouvé dans la chaine.
De même j'ai supposé que les noms faisaient toujours 7 caractères.
eric
une proposition par formule :
en C1 :
=STXT(B1;MAX(SI(ESTERREUR(CHERCHE($A$1:$A$11;B1));0;CHERCHE($A$1:$A$11;B1)));7)
formule matricielle à valider par shift+ctrl+entrée
Pour ne pas doubler la longueur de la formule #VALEUR! est retourné si aucun serveur n'est trouvé dans la chaine.
De même j'ai supposé que les noms faisaient toujours 7 caractères.
eric