Macro masquer les cellules = 0
alex49520
Messages postés
124
Statut
Membre
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Voila étant novice en macro, je voulais savoir comment il était possible de masquer des lignes pour lesquels les cellules se trouvant dans la colonne A sont = à 0.
J'ai commencé mes recherches et j'arrive à cela, cependant je ne sais pas comment intégrer ma condition, car pour le moment j'ai simplement enregistré le masquage des cellules.
Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 18/05/2009 par ST1
'
' Touche de raccourci du clavier: Ctrl+m
'
Range("D2").Select
Sheets(Array("Plan comptable Chateau", "Avril", "Mai", "Juin", "Juillet", "Aout", _
"Septembre", "Octobre", "Novembre", "Decembre", "Janvier", "Fevrier", "Mars")). _
Select
Sheets("Plan comptable Chateau").Activate
ActiveWindow.SmallScroll Down:=10
ActiveWindow.ScrollRow = 67
ActiveWindow.ScrollRow = 69
ActiveWindow.ScrollRow = 70
ActiveWindow.ScrollRow = 72
ActiveWindow.ScrollRow = 75
ActiveWindow.ScrollRow = 77
ActiveWindow.ScrollRow = 80
ActiveWindow.ScrollRow = 82
ActiveWindow.ScrollRow = 85
ActiveWindow.ScrollRow = 88
ActiveWindow.ScrollRow = 90
ActiveWindow.ScrollRow = 92
ActiveWindow.ScrollRow = 94
ActiveWindow.ScrollRow = 96
ActiveWindow.ScrollRow = 98
ActiveWindow.ScrollRow = 100
ActiveWindow.ScrollRow = 103
ActiveWindow.ScrollRow = 106
ActiveWindow.ScrollRow = 109
ActiveWindow.ScrollRow = 112
ActiveWindow.ScrollRow = 115
ActiveWindow.ScrollRow = 116
ActiveWindow.ScrollRow = 120
ActiveWindow.ScrollRow = 122
ActiveWindow.ScrollRow = 123
ActiveWindow.ScrollRow = 124
ActiveWindow.ScrollRow = 126
ActiveWindow.ScrollRow = 128
ActiveWindow.ScrollRow = 130
ActiveWindow.ScrollRow = 131
ActiveWindow.ScrollRow = 133
ActiveWindow.ScrollRow = 134
ActiveWindow.ScrollRow = 136
ActiveWindow.ScrollRow = 139
ActiveWindow.ScrollRow = 142
ActiveWindow.ScrollRow = 145
ActiveWindow.ScrollRow = 146
ActiveWindow.ScrollRow = 149
ActiveWindow.ScrollRow = 152
ActiveWindow.ScrollRow = 154
ActiveWindow.ScrollRow = 155
ActiveWindow.ScrollRow = 156
ActiveWindow.ScrollRow = 157
ActiveWindow.ScrollRow = 156
ActiveWindow.ScrollRow = 155
ActiveWindow.ScrollRow = 154
ActiveWindow.ScrollRow = 152
ActiveWindow.ScrollRow = 151
ActiveWindow.ScrollRow = 149
ActiveWindow.ScrollRow = 148
ActiveWindow.ScrollRow = 146
ActiveWindow.ScrollRow = 145
ActiveWindow.ScrollRow = 144
ActiveWindow.ScrollRow = 143
ActiveWindow.ScrollRow = 142
ActiveWindow.ScrollRow = 141
ActiveWindow.ScrollRow = 140
ActiveWindow.ScrollRow = 139
Range("A174").Select
ActiveWindow.SmallScroll Down:=-34
Rows("150:199").Select
Selection.EntireRow.Hidden = True
End Sub
Si quelqu'un pouvait me conseiller, ça m'aiderait beaucoup.
Merci d'avance à toutes les personnes qui pourront m'aider.
Alex
Voila étant novice en macro, je voulais savoir comment il était possible de masquer des lignes pour lesquels les cellules se trouvant dans la colonne A sont = à 0.
J'ai commencé mes recherches et j'arrive à cela, cependant je ne sais pas comment intégrer ma condition, car pour le moment j'ai simplement enregistré le masquage des cellules.
Sub Macro2()
'
' Macro2 Macro
' Macro enregistrée le 18/05/2009 par ST1
'
' Touche de raccourci du clavier: Ctrl+m
'
Range("D2").Select
Sheets(Array("Plan comptable Chateau", "Avril", "Mai", "Juin", "Juillet", "Aout", _
"Septembre", "Octobre", "Novembre", "Decembre", "Janvier", "Fevrier", "Mars")). _
Select
Sheets("Plan comptable Chateau").Activate
ActiveWindow.SmallScroll Down:=10
ActiveWindow.ScrollRow = 67
ActiveWindow.ScrollRow = 69
ActiveWindow.ScrollRow = 70
ActiveWindow.ScrollRow = 72
ActiveWindow.ScrollRow = 75
ActiveWindow.ScrollRow = 77
ActiveWindow.ScrollRow = 80
ActiveWindow.ScrollRow = 82
ActiveWindow.ScrollRow = 85
ActiveWindow.ScrollRow = 88
ActiveWindow.ScrollRow = 90
ActiveWindow.ScrollRow = 92
ActiveWindow.ScrollRow = 94
ActiveWindow.ScrollRow = 96
ActiveWindow.ScrollRow = 98
ActiveWindow.ScrollRow = 100
ActiveWindow.ScrollRow = 103
ActiveWindow.ScrollRow = 106
ActiveWindow.ScrollRow = 109
ActiveWindow.ScrollRow = 112
ActiveWindow.ScrollRow = 115
ActiveWindow.ScrollRow = 116
ActiveWindow.ScrollRow = 120
ActiveWindow.ScrollRow = 122
ActiveWindow.ScrollRow = 123
ActiveWindow.ScrollRow = 124
ActiveWindow.ScrollRow = 126
ActiveWindow.ScrollRow = 128
ActiveWindow.ScrollRow = 130
ActiveWindow.ScrollRow = 131
ActiveWindow.ScrollRow = 133
ActiveWindow.ScrollRow = 134
ActiveWindow.ScrollRow = 136
ActiveWindow.ScrollRow = 139
ActiveWindow.ScrollRow = 142
ActiveWindow.ScrollRow = 145
ActiveWindow.ScrollRow = 146
ActiveWindow.ScrollRow = 149
ActiveWindow.ScrollRow = 152
ActiveWindow.ScrollRow = 154
ActiveWindow.ScrollRow = 155
ActiveWindow.ScrollRow = 156
ActiveWindow.ScrollRow = 157
ActiveWindow.ScrollRow = 156
ActiveWindow.ScrollRow = 155
ActiveWindow.ScrollRow = 154
ActiveWindow.ScrollRow = 152
ActiveWindow.ScrollRow = 151
ActiveWindow.ScrollRow = 149
ActiveWindow.ScrollRow = 148
ActiveWindow.ScrollRow = 146
ActiveWindow.ScrollRow = 145
ActiveWindow.ScrollRow = 144
ActiveWindow.ScrollRow = 143
ActiveWindow.ScrollRow = 142
ActiveWindow.ScrollRow = 141
ActiveWindow.ScrollRow = 140
ActiveWindow.ScrollRow = 139
Range("A174").Select
ActiveWindow.SmallScroll Down:=-34
Rows("150:199").Select
Selection.EntireRow.Hidden = True
End Sub
Si quelqu'un pouvait me conseiller, ça m'aiderait beaucoup.
Merci d'avance à toutes les personnes qui pourront m'aider.
Alex
A voir également:
- Macro masquer les cellules = 0
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Comment masquer les amis sur facebook - Guide
- Verrouiller cellules excel - Guide
- Masquer conversation whatsapp - Guide
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
11 réponses
bonjour,
il est préférable qu'il y ait une étiquette (nom de champs) avant tes chiffres
cette macro parcourt le classeur et ignore les feuilles où il n'y a pas de zéros dans la colonn A
il est préférable qu'il y ait une étiquette (nom de champs) avant tes chiffres
cette macro parcourt le classeur et ignore les feuilles où il n'y a pas de zéros dans la colonn A
Sub cacher_zero()
Dim cptr As Byte, nbre As Byte
Application.ScreenUpdating = False
nbre = ThisWorkbook.Sheets.Count
For cptr = 1 To nbre
Columns("A:A").AutoFilter Field:=1, Criteria1:="<>0"
Next
End Sub
Je suis désolé michel_m mais je n'arrive pas a comprendre ta réponse. Je voudrais que ma macro ne fonctionne qu'avec certains onglets : ("Plan comptable Chateau", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Decembre", "Janvier", "Fevrier", "Mars").
Je suis vraiment débutant en macro, j'essai de comprendre ce que tu m'as envoyé mais malheureusement, je ne comprend pas grand chose. Désolé.
Merci d'avance,
Alex
Je suis vraiment débutant en macro, j'essai de comprendre ce que tu m'as envoyé mais malheureusement, je ne comprend pas grand chose. Désolé.
Merci d'avance,
Alex
Il y a peut être une petite subtilité en plus, les cellules que l'on retrouve dans l'onglet plan comptable sont reportés dans tous les autres onglets qui sont en fait des balances. Cependant, si j'arrivais a masquer toutes les cellules vides dans l'onglet plan comptable, serait il possible que dans les onglets suivants, les cellules soient masquées également. En espérant avoir été assez clair.
Merci d'avance,
Alex
Merci d'avance,
Alex
Sub cacher_zero()
Dim cptr As Byte
Dim tablo
tablo = Array("Plan comptable Chateau", "Avril", "Mai", "Juin", "Juillet", "Aout", _
"Septembre", "Octobre", "Novembre", "Decembre", "Janvier", "Fevrier", "Mars")
Application.ScreenUpdating = False
For cptr = 0 To UBound(tablo)
Sheets(tablo(cptr)).Columns("A:A").AutoFilter Field:=1, Criteria1:="<>0"
Next
End Sub
Rappel:il est préférable qu'il y ait une étiquette (nom de champs) avant tes chiffres
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Qu'entends tu par "il est préférable qu'il y ait une étiquette (nom de champs) avant tes chiffres", je ne vois pas ce que tu veux dire. La macro que tu m'as donné est a modifier ou elle est censée fonctionner ?
par exemple, en A1, l'indication "numéro de compte"
la macro va installer dans la colonne A dechacune de tes feuilles, un filtre masquant les valeurs=0
mais le filtre va s'installer dans la première cellule où il y a quelque chose d'écrit
regarde cette petite démo:
https://www.cjoint.com/?fsodGss0T6
je m'apercois d'un petit bug dans ma macro donc voici le dernier jus:
c'est à copier-coller dans VBE( Alt+F11 insertion - module)
la macro va installer dans la colonne A dechacune de tes feuilles, un filtre masquant les valeurs=0
mais le filtre va s'installer dans la première cellule où il y a quelque chose d'écrit
regarde cette petite démo:
https://www.cjoint.com/?fsodGss0T6
je m'apercois d'un petit bug dans ma macro donc voici le dernier jus:
Sub cacher_zero()
Dim cptr As Byte
Dim tablo
tablo = Array("Plan comptable Chateau", "Avril", "Mai", "Juin", "Juillet", "Aout", _
"Septembre", "Octobre", "Novembre", "Decembre", "Janvier", "Fevrier", "Mars")
Application.ScreenUpdating = False
For cptr = 0 To UBound(tablo)-1
Sheets(tablo(cptr)).Columns("A:A").AutoFilter Field:=1, Criteria1:="<>0"
Next
End Sub
c'est à copier-coller dans VBE( Alt+F11 insertion - module)
Merci pour cette macro michel_m, mais je me suis rendu compte que le mieux serait de masquer toutes les lignes dont les cellules colonnes E = 0.
Dois je juste changer Columns("A:A") en Columns("E:E") ? Ou il y a t il autre chose a changer ?
Dois je juste changer Columns("A:A") en Columns("E:E") ? Ou il y a t il autre chose a changer ?
A quoi correspond cette ligne : For cptr = 0 To UBound(tablo) - 1 ?
Il me lance le débogueur et me surligne cette ligne en jaune !!
Il me lance le débogueur et me surligne cette ligne en jaune !!
Finalement, j'ai réussi en enlevant le -1 à la fin de la ligne.
J'ai un autre problème de macro mais cela concerne une macro couleur, faut il que je repose une autre question ? Ou peux tu m'aider sur ce post.
En gros, je voudrais faire une macro qui colore le texte d'une partie d'une colonne en rouge, si le résultat de la colonne n'est pas égal à une valeur d'une autre feuille.
En fait je voudrais que si D138 (feuille recap_bal) est différent de E199 (feuille avril) alors colorer les cellules allant de D6 à D137.
Ou alors si c'est plus simple de colorer seulement la cellule D138.
Merci d'avance,
Alex
J'ai un autre problème de macro mais cela concerne une macro couleur, faut il que je repose une autre question ? Ou peux tu m'aider sur ce post.
En gros, je voudrais faire une macro qui colore le texte d'une partie d'une colonne en rouge, si le résultat de la colonne n'est pas égal à une valeur d'une autre feuille.
En fait je voudrais que si D138 (feuille recap_bal) est différent de E199 (feuille avril) alors colorer les cellules allant de D6 à D137.
Ou alors si c'est plus simple de colorer seulement la cellule D138.
Merci d'avance,
Alex