vba commande Find dans une colonne sur 2 conditions
1 réponse
KASMINATOR
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 :
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
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jc
KASMINATOR a émis l'idée suivante :
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 : 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
N'aurait-il pas mieux utiliser "microsoft.public.fr.excel" ? Si je comprends bien, les termes ""Femme" ou "Homme" se situe dans la colonne G soit la 7ème. dans ce cas j'aurais tendance à boucler uniquement sur les cellules de la colonne 7. For y = 2 To DerniereLigne If cells(y,7).Find("Femme") Is Nothing Then cells(y,7) "Homme" Else: cells(y,7) = "Femme" Next Eventuellement à la place de cells(y,7).Find("Femme").Find("Femme") Is Nothing mettre instr(cells(y,7),"Femme")=0 et de même pour Homme Pas essayé -- ______________________________________________ Jc
KASMINATOR a émis l'idée suivante :
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 :
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
N'aurait-il pas mieux utiliser "microsoft.public.fr.excel" ?
Si je comprends bien, les termes ""Femme" ou "Homme" se situe dans la
colonne G soit la 7ème.
dans ce cas j'aurais tendance à boucler uniquement sur les cellules de
la colonne 7.
For y = 2 To DerniereLigne
If cells(y,7).Find("Femme") Is Nothing Then cells(y,7) "Homme" Else: cells(y,7) = "Femme"
Next
Eventuellement à la place de
cells(y,7).Find("Femme").Find("Femme") Is Nothing
mettre
instr(cells(y,7),"Femme")=0
et de même pour Homme
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 : 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
N'aurait-il pas mieux utiliser "microsoft.public.fr.excel" ? Si je comprends bien, les termes ""Femme" ou "Homme" se situe dans la colonne G soit la 7ème. dans ce cas j'aurais tendance à boucler uniquement sur les cellules de la colonne 7. For y = 2 To DerniereLigne If cells(y,7).Find("Femme") Is Nothing Then cells(y,7) "Homme" Else: cells(y,7) = "Femme" Next Eventuellement à la place de cells(y,7).Find("Femme").Find("Femme") Is Nothing mettre instr(cells(y,7),"Femme")=0 et de même pour Homme Pas essayé -- ______________________________________________ Jc