Application.ScreenUpdating = False 'Supprime les lignes vides
For i = nbcolonne To 1 Step -1
If Application.WorksheetFunction.CountA(Columns(i)) = 0 Then Columns(i).Delete
End Sub
Je ne parvient pas vraiment à mon but puisque je
voudrais que cette macro, teste les cellules uniquement à partir de la
ligne 2 et qu'au lieu de les supprimer, elle les masquent..
Comment faire
Je vous donne un exemple pour préciser :
A
B
C
D
1 n° offre
nb de pièce
Délais
Commande
2
12
140
01/01
3
10
20
08/03
4
Dans mon exemple je voudrais qu'après avoir testé les cellules à partir
de la deuxième ligne, ma macro constatent que la colonne C (à partir de
la ligne 2) est vide et qu'elle la masque.
cs_Le routier
Messages postés16Date d'inscriptionlundi 20 février 2006StatutMembreDernière intervention19 mai 2006 20 févr. 2006 à 16:27
Salut ..
Je suis pas un expert mais je peux te proposer ça :
a = 2
While Cells(a, 1) <> "" ' boucle pour que la macro s'arrête quand colonne a est vide
If Cells(a, 3) = "" Then
Rows(a).Select
Selection.EntireRow.Hidden = True
End If
a = a + 1
Wend
cs_Le routier
Messages postés16Date d'inscriptionlundi 20 février 2006StatutMembreDernière intervention19 mai 2006 20 févr. 2006 à 16:44
Le a = 2 s'ignifie qu'il cherche à patrtir de la ligne 2
Un ptit conseil : supprime toute ta macro et colle celle-ci pour tester ....
Sub essais()
a = 2
While Cells(a, 1) <> "" ' boucle pour que la macro s'arrête quand colonne a est vide
If Cells(a, 3) = "" Then
Rows(a).Select
Selection.EntireRow.Hidden = True
End If
a = a + 1
Wend
End sub
Bon courage
Les routiers sont sympas !!!
Pensez à réponse acceptée ...
crogiez
Messages postés86Date d'inscriptionlundi 8 décembre 2003StatutMembreDernière intervention27 décembre 2011 20 févr. 2006 à 16:44
Cet exemple montre comment balayer une colonne de données intitulée « myRange ». Si une cellule contient la même valeur que celle située immédiatement au-dessus, l'adresse de la cellule contenant le doublon est affichée.
Set r = Range("myRange")
For n = 1 To r.Rows.Count
If r. Cells (n, 1) = r.Cells(n + 1, 1) Then
MsgBox "Duplicate data in " & r.Cells(n + 1, 1).Address
End If
Next n
Lyly601
Messages postés67Date d'inscriptionjeudi 5 janvier 2006StatutMembreDernière intervention16 octobre 2006 20 févr. 2006 à 16:46
non désolé ça ne marche pas, en plus tu veux me masquer une ligne Selection.EntireRow.Hidden = True
alors que moi c'est la colonne que je veux masquer.