| ||||||||
Petit astucien | bonjour je voudrais "scanner" une chaine de caractère contenue dans une cellule si celle-ci contient la lettre W (majuscule ou minuscule) j'applique un traitement si c'est Q , .... mais la lettre peut être dans n'importe quelle position dans la chaîne de caractères merci pour vos lumières | |||||||
Publicité | ||||||||
Petit astucien | bonsoir, peut-être avec les fonctions CHERCHE ou TROUVE voir l'aide d'Excel pour plus de détails kénavo ps : ouvrage peu cher sur Excel 2003 Fonctions et Formules Micro Application 8,70€ | |||||||
Petit astucien | merci pour l'info j'ai fait ma macro avec search("lettre cherchée",cellule contenant la chaîne,index) le problème : la fonction renvoie un nombre correspondant à la position de la lettre dans la chaîne mais si la lettre n'existe pas et alors cela bloque tous mes traitements ... ma macro fonctionne bien lorsque toutes les lettres que je cherche sont présentes s'il en manque une ... c'est le flop existe t il un moyen d'inhiber ce #VALEUR! merci pour vos conseils
| |||||||
Astucien ![]() | Bonsoir, Suppose que tu cherches la lettre "W" en A1 :
Cette formule à l'intérêt de ramener le chiffre 0 si Excel ne trouve pas la lettre "w" ou un nombre positif qui indique quelle place occupe la lettre recherchée la 1ère fois qu'il la trouve dans A1. Modifié par Marmotte18 le 02/02/2007 18:23 | |||||||
![]() | bonjour, Voici une petite fonction personnalisée qui utilise instr() sur la celluleactive
A+ Modifié par galopin01 le 02/02/2007 19:26 | |||||||
![]() | Avec la même fonction personnalisée, cette autre macro cherche tous les caractères de A à Z dans la cellule active
Nota : LCase pour ne pas tenir compte des majuscules/minuscules A+ Modifié par galopin01 le 02/02/2007 19:40 | |||||||
Petit astucien | merci pour vos réponses j'avais travaillé entre temps (pour rien puisque vous m'apportez des solutions meilleures) je m'en étais sorti ainsi : (c'est un peu laborieux mais fonctionnel)
Public Function Kmod(classe_serv, combi, altitude) longueur = Len(combi) nG = 0 For t = 1 To longueur If nG > 0 Then ect .... | |||||||
![]() | Euh... Je ne sais pas si c'est meilleur, surtout dans ton contexte car je n'ai pas épluché tes 2 topics mais instr() est à coup sur puissant... Si tu dois rechercher seulement 4 ou 5 caractères tu peux tester quelque chose comme ça :
...pour traiter indifféremment 0, 1 ou plusieurs possibilités simultanées ou non. A+ A+ Modifié par galopin01 le 02/02/2007 21:01 | |||||||
Astucien ![]() | Bonjour, Je n'avais pas fait attention qu"il s'agissait de macro ! On peut également utiliser cette macro à laquelle tu peux faire appel quand tu veux dans ta programmation (grâce à l'instruction call). Elle ramène :
Supposons que tu aies besoin d'analyser la cellule A1 pour savoir si elle contient la lettre "w", alors :
Modifié par Marmotte18 le 03/02/2007 08:33 | |||||||
Publicité | ||||||||
Petit astucien | merci à vous tous pour vos remarques précieuses je serais prétentieux de dire que j'ai tout compris mais une chose est sure : à chaque fois que je m'adresse à vous je trouve des gens sympatiques et dévoués et les progrès sont à la clef ! merci et à bientôt sans aucun doute | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | |||||||||||||||
|