Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
690 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Condition avec recherche de mot

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Condition avec recherche de mot

n°2285632
pixiess
Posté le 27-07-2016 à 00:09:48  profilanswer
 

Bonjour à tous,
 
Je vous expose mon problème :
 
J'ai une macro xlsx me permettant de copier plusieurs lignes provenant d'un premier fichier xlsx (fichier 1) dans un autre fichier xlsx (fichier 2).
 
Il y a quelques semaines je vous avais demandé de m’aider concernant un problème sur une double condition if :
 
Bref rappel :
Dans le premier fichier "1", j'ai une colonne B avec pour choix de valeur X ou Y, et, dans une deuxième colonne C j'ai pour choix 1, 2 ou 3.
Pour le moment ma macro copie toutes les lignes du tableau fichier "1"dans un tableau sur le fichier "2".
Je souhaiterai cependant que quand la valeur dans la colonne B est de Y et la valeur dans la colonne C est 1 ou 2, cette ligne ne soit pas copiée.
 
Et la solution :
 
If not( Cells(i, 2).Value = "y" And (Cells(i, 3).Value = 1 Or Cells(i, 3).Value = 2)) Then
 
 
Cependant , maintenant je souhaiterai que quand un certain « mot » est détecté dans la colonne D du fichier 1, la ligne correspondante ne soit pas copiée.
La colonne D peut contenir le mot « test », « test 1 », « test 2 » … « test A » … ou d’autre choses.
J’aimerai que dès que le mot « test » est détecté dans la colonne D, et même au sein d’autres mots ( ex « test unautremot » ) la ligne correspondante ne soit pas copiée.

 
 
Pourriez-vous m’aider ?
 
Je vous remercie d’avance.
 
Thomas
 
 
Version Excel : 2013 FR

mood
Publicité
Posté le 27-07-2016 à 00:09:48  profilanswer
 

n°2285636
Chelmi18
Posté le 27-07-2016 à 08:29:30  profilanswer
 

Salut,
 
Avant la dernière parenthèse, ajoute :

Code :
  1. And (Instr(1,Ucase(Cells(i,4).Value), "TEST" ) > 0)


 
Instr(début, chaîne rechercher, expression recherchée) : fonction de recherche de chaîne dans une chaîne
 
Ucase : mise en majuscule de la chaîne où tu cherches (je le fais toujours pour éviter les problème de casse mixte)
"TEST" : le mot ou l'expression que tu cherches (peut contenir des espaces comme "TEST TOTO" )
 
Instr retourne un integer qui indique la position de l'expression trouvée, donc si c'est > 0 c'est que c'est trouvé.


Message édité par Chelmi18 le 27-07-2016 à 08:30:50

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Condition avec recherche de mot

 

Sujets relatifs
Recherche dans des feuilles de donnéesinsert into avec condition
copie colle ligne sous condition[C#]Problème de droit d'accès, Outil de recherche
besoin de gagner du temps sur le cacul de recherche dans gros fichiermacro impression excel sous condition
Recherche de donnéesBatch avec recherche sous condition
condition where : recherche par mot clé 
Plus de sujets relatifs à : Condition avec recherche de mot


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR