IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

vba commande Find dans une colonne sur 2 conditions


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mars 2018
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2018
    Messages : 31
    Par défaut vba commande Find dans une colonne sur 2 conditions
    Bonjour à toutes et tous,

    Je sèche après plusieurs tentatives pour faire ma commande VBA. Dans la colonne G j'ai des commentaires textes pour lesquels je cherche le mot Femme ou Homme. Si dans le commentaire il y a le terme femme alors je remplace la phrase entière par femme. Si dans le commentaire il y a le terme homme alors je remplace la phrase entière par homme. Je cherche à exécuter cette macro de la deuxième ligne à la dernière non vide.

    Voici mes deux essais non concluant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dim av, y
    With Sheets("Feuil1")
    Dim DerniereLigne As Long
    DerniereLigne = Range("G" & Rows.Count).End(xlUp).Row
    For y = 2 To DerniereLigne
    If Range("G" & y).Find("Femme") Is Nothing Then Range(("G" & y), 7) = "Homme" Else: Range(("G" & y), 7) = "Femme"
    Next
    End With
    Merci de votre aide.

    KASMINATOR Genesis

  2. #2
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    ligne corrigée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      If Not Range("G" & y).Find("Femme") Is Nothing Then Range("G" & y) = "Homme" Else: Range("G" & y) = "Femme"
    Cdlt

  3. #3
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Petit détail : je ne vois pas trop ce que peut représenter Range(("G" & y), 7) ???
    Je vais supposé que le ",7" est en trop.

    Le ":" après le "Else" est en trop.


    Pour ce qui est de ton problème :
    Find sert à chercher une cellule dans une plage.

    Pour chercher une chaine de caractère à l'intérieur d'une autre chaine, on utilise la fonction InStr().
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If InStr(Cells(y, "G"),"Femme") = 0 Then Cells(y, "G") = "Homme" Else Cells(y, "G") = "Femme"

  4. #4
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    J'ajouterais l'instruction possible

  5. #5
    Membre averti
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mars 2018
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2018
    Messages : 31
    Par défaut
    Que dois-je dire de plus que Merci et merci beaucoup !

    Vous avez réussi à bien m'aider pour le coup.

    Je vous souhaite à tous un très bon week-end ensoleillée


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Selection dans une colonne sur critère multiple
    Par hesstaha dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/01/2019, 14h15
  2. [Toutes versions] VBA - Macro Majuscule dans une colonne
    Par Antho- dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/08/2017, 10h11
  3. Réponses: 6
    Dernier message: 24/05/2014, 12h38
  4. Réponses: 6
    Dernier message: 04/11/2008, 22h35
  5. [VBA-E] Recherche dans une colonne
    Par snowkhan dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/03/2006, 14h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo