Bonjour le Forum,
j'ai une liste (A2:A30) remplie de noms divers et je cherche à afficher les lignes, dont les cellules contiennent le nom d'une variable que j'ai crée. Voici le code que je mets et ça ne marche pas : HELP!
Option Explicit
Public NomRecherche As String
Sub AfficheAjouts()
NomRecherche = "Ajouts"
Call AfficheNRT
End Sub (celle-ci marche)
Sub AfficheNRT()
Cells(2, 1).Select
Do Until ActiveCell.Value = ""
If Range(ActiveCell, ActiveCell.Offset(0, 4)).Value = NR Then
Rows(ActiveCell.Row).Select
Selection.EntireRow.Hidden = False
Else:
Rows(ActiveCell.Row).Select
Selection.EntireRow.Hidden = True
End If
ActiveCell.Offset(1, 0).Activate
Loop
End Sub
Je mets un loop afin de pouvoir rajouter autant de noms que je le souhaite dans ma liste. Je souhaite donc fonctionner en dynamique.
Ca plante au niveau du IF. Quelqu'un peut-il m'aider???
Par avance Merci. Juju
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 19 oct. 2012 à 14:31
Bonjour, Ca "plante" comment ?
Quel If ? celui-ci ?
If Range(ActiveCell, ActiveCell.Offset(0, 4)).Value = NR Then
Normal === >> tu as une incompatibilité de type !!!
Un range (une cellule) ne peut se définir ainsi !
Ouvre s'il te plait ton aide VBA sur le mot Range et lis !:!!! C'est énorme et très rudimentaire !
Sans compter (mais c'est encore un autre aspect ), que l'on ne voit pas ce qu'est NR et où et comment tu l'as déclaré et défini !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ