macro masquage ligne

T

tibo

Guest
Bonjour a tout le forum!

J' ai un petit probleme avec cette macro:

Sub Action2 ()
Dim i As Integer
i = 0
For i = 1 To 1000
If Sheets("test").Range("A" & i).Value = RANGE("B1").Value Then
Sheets("test").Range("A" & i, ).EntireRow.Hidden = True
End If
Exit for
Next i

End Sub

Le but etant de masquer toutes les lignes pour lesquelles la cellule de la colonne A verifie une condition...
Je ne sais pas, ca fonctionne sur la premiere ligne et puis c'est tout....

Est ce que vous auriez une solution??

Merci d'avance
Longue vie au forum!
 
E

Eric D

Guest
Salut Tibo,

Essaye ceci :

Sub Action2()
Dim i As Integer
i = 0
For i = 1 To 1000
If Sheets("test").Range("A" & i).Value = Range("B1").Value Then
Sheets("test").Range("A" & i).EntireRow.Hidden = True
End If
Next i

End Sub


Les modifs :
- Pas de "Exit for"
- Pas de virgule à la fin de Range("A" & i)

Bonne suite,
@+
Eric
 
T

tibo

Guest
Merci Eric

Concernant la virgule, c'etait une erreur de frappe, ce n'est pas le meme ordi dc pas de copier/coller...
Pour le "Exit for" y a du bon!

Par contre je sais pas pourquoi le debogueur s'arrete sur la ligne

If Sheets("test").Range("A" & i).Value = Range("B1").Value Then

Alors je ne vois pas


Merci
 
E

Eric D

Guest
Re-salut Tibo,

Je viens de réessayer cette macro, pas de problème !

A condition, bien sur, que le nom de l'onglet concerné porte aussi le nom "test" (comme dans le code de ta macro)

Essaie à nouveau !

Eric
 
G

Gérard DEZAMIS

Guest
Bonjour Tibo & Eric

Je viens d'essayer mais ... cela ne fonctionne pas comme prévu.
J'ai limité la boucle à 1 to 100 et cette fonction ne me cache que les ligne comprennant un vide dans la colonne A. Les "doublons colonne A et B ne sont pas pris en compte .

En reserve avez vous une petite explication ?

Merci d'avance

@+
GD
 
E

Eric D

Guest
Bonjour Gérard,

Attention à la bonne compréhension de cette macro :

Celle-ci a pour but de masquer les lignes pour lesquelles la cellule placée en colonne A a la même valeur que la cellule B1 (et uniquement B1).

Il n'y a pas, dans ce cas, de relation entre un doublon correspondant à deux cellules de la même ligne.

@+
Eric
 
G

Gérard DEZAMIS

Guest
Re Eric D

"J'mavais planté grave"

Evidemment ! Mais bon dieu c'est bien sûr. C'est le type d'erreur qui va me faire progresser..... je vais m'en souvenir de celle là.

Studieusement j'ai copié sur le devoir du Chet et Hop :

"Dim i As Integer
i = 0
For i = 1 To 100
If Sheets("test").Range("A" & i).Value = Range("B" & i).Value Then
Sheets("test").Range("A" & i).EntireRow.Hidden = True
End If
Next i

et j'ai ce qui me convient parfaitement . Je vais ajouter un petit Application.ScreenUpdationg False puis True là dessus car cela "brouille" un petit peu mais c'est déjà super.

Merci de cette leçon improvisée. Mon carnet est en train de se remplir !

Bonne journée à Tous et bon W-E

@+
GD
 
T

tibo

Guest
Merci Eric,
Je suis repassé sur lautre PC et j'ai fait un copier/coller de la macro et la Oh miracle ca marche donc merci...
Sinon pour Gérard je crois qu'on a la meme methode d'apprentissage, on en pique par ci par la et on magouille et on essaye et quand ca coince on va voir les betes sur XLD...

Aller bonne continuation a tous!
 

Discussions similaires

Réponses
11
Affichages
347
Réponses
4
Affichages
234

Statistiques des forums

Discussions
312 491
Messages
2 088 889
Membres
103 982
dernier inscrit
krakencolas