VBA excel help svp

Résolu
MC's Assigned geek -  
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis débutant en VBA et je souhaiterai effectuer une procédure qui fasse grosso modo:

Range("C3").activate
if activerow (activecell.row?) = *range("C2")* then donothing else row hide
activecell.offset(0,1)
if activerow (activecell.row?) = *range("C2")* then donothing else row hide
activecell.offset(0,1)

...

et ainsi de suite jusqu'à ce qu'il n'y ai plus rien dans les lignes...

Pour résumer, qui cache toute les lignes qui ne contiennent pas ce que l'on rentre dans la cellule C2 et qui ne sont pas vides

Merci d'avance de votre aide
A voir également:

7 réponses

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Demande incompréhensible .....

en plus:
*range("C2")* then donothing else row hide : Patois VBA maison ?
--
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Salut michel,
pour résumer, qui cache toute les lignes qui ne contiennent pas ce que l'on rentre dans la cellule C2 et qui ne sont pas vides
Donc si j'ai bien compris,
1- test sur la ligne pour savoir si on retrouve le contenu de C2 dans une cellule
2- si oui : on ne fait rien
3- si non : si elle est "non vide" : on masque la ligne
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Salut Pijaku

bravo, Champollion ! ;-)

Je te laisse le bébé
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
merci du cadeau. Bon j'vais boire un p'tit café et je m'en occupe après.
Bonjour chez toi.
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
On ne doit tester que la colonne C ou la valeur contenue dans "C2" peut être partout dans ton tableau?
0
MC's Assigned geek
 
La valeur C2 peut-être n'importe ou dans chaque ligne testé...

Merci de ton aide Pijaku,
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Salut,
Ce code masque toutes les lignes ou l'on ne trouve pas la valeur de la cellule C2 (y compris les lignes vides) :

Dim NBlignes As Integer, NBCol As Integer, i As Integer, j As Integer, cpt As Integer
cpt = 0
NBlignes = ActiveSheet.UsedRange.Rows.Count + ActiveSheet.UsedRange.Row - 1
NBCol = ActiveSheet.UsedRange.Columns.Count
For i = 3 To NBlignes
For j = 1 To NBCol
If Cells(i, j).Value = Range("C2").Value Then
cpt = 1
End If
Next j
If cpt = 0 Then
Cells(i, j).EntireRow.Hidden = True
End If
cpt = 0
Next i
0
MC's Assigned geek
 
Malheureusement ca ne marche pas...
Il semble y avoir un problème avec la ligne

Cells(i, j).EntireRow.Hidden = True

... je continue à chercher de mon côté mais compte sur vous pour m'aider.

MC's a gK
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Salut,
Chez moi cela fonctionne bien. N'y a t'il pas des lignes déjà cachées dans ton tableau?
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

Tu peux remplacer Cells(i, j).EntireRow.Hidden = True
par
Rows(i).Hidden = True
0