Ignorer espaces dans une recherche VBA

Ignorer espaces dans une recherche VBA - VB/VBA/VBS - Programmation

Marsh Posté le 15-01-2015 à 08:45:50    

Bonjour à tous,
 
Je débute en VBA et j'ai un problème pour utiliser la fonction find.
J'ai écrit ça qui marche très bien :
 

Code :
  1. With Worksheets(1).Range("A6:A63000" ) 'On cherche l'hexacle récupéré dans le fichier FLR dans la colonne A
  2.    
  3.         Set HEXACLE_Path = .Find(What:=HEXACLE)
  4.         HEXACLE_Path_Row = HEXACLE_Path.Row 'On regarde à quelle ligne est situé l'hexaclé dans le fichier FLR
  5.         Poche = Workbooks(FLR).Sheets(1).Cells(HEXACLE_Path_Row, 14) 'On va chercher la valeur de la poche correspondant à l'hexaclé
  6.        
  7.     End With


 
Le problème étant qu'il peut arriver certaines fois que HEXACLE comporte un espace au début et/ou à la fin. Or dans mon fichier FLR ces espaces ne sont pas présents et donc la recherche ne trouve rien. J'ai bien essayé de mettre un caractère générique * avant et après HEXACLE mais sans succès.
 
Y a t'il un moyen de contourner ou régler ce problème ?

Reply

Marsh Posté le 15-01-2015 à 08:45:50   

Reply

Marsh Posté le 15-01-2015 à 10:06:18    

 
           Bonjour,
 
           pourtant rien qu'en lisant l'aide VBA de la méthode Find, voir ses autres paramètres …
           Activer le Générateur de macros et effectuer la recherche manuellement livre pourtant le code sur un plateau !
           Qui plus est mauvaise utilisation de cette méthode, voir aussi l'exemple de cette aide !
 
           Sinon autre voie pour ces mauvaises saisies, voir du côté des fonctions texte comme TRIM, là aussi consulter l'aide VBA intégrée …
 
           ________________________________________________________________________________________________________
           Tous unis, tous Charlie
 

Reply

Marsh Posté le 15-01-2015 à 11:18:58    

Marc L a écrit :

 
           Bonjour,
 
           pourtant rien qu'en lisant l'aide VBA de la méthode Find, voir ses autres paramètres …
           Activer le Générateur de macros et effectuer la recherche manuellement livre pourtant le code sur un plateau !
           Qui plus est mauvaise utilisation de cette méthode, voir aussi l'exemple de cette aide !
 
           Sinon autre voie pour ces mauvaises saisies, voir du côté des fonctions texte comme TRIM, là aussi consulter l'aide VBA intégrée …
 
           ________________________________________________________________________________________________________
           Tous unis, tous Charlie
 


La fonction TRIM était exactement ce qu'il me fallait merci.

Reply

Marsh Posté le 15-01-2015 à 13:25:51    

 
           La fonction Trim est un pis-aller car elle est inutile si la méthode Find est correctement paramétrée !
 
           En cas de non compréhension de l'aide VBA intégrée, en utilisant le Générateur de macros, le code est livré sur un plateau …
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed