Masquer le lignes sur excel avec vba

soumus

XLDnaute Junior
Bonjour à tous et à toutes

Voici le probléme auquel je suis confronté je dispose d'un tableau excel avec plusieurs garanties et capitaux et sur la colone B (colonne capitaux) je voudrais masquer automatiquement les lignes qui correspondent à des garanties non accordées,donc je voudrais masquer les lignes [ 1-2-3-4] puisque les garanties sont nulles.

Si vous pouvais m'aider

Merci d'avance

exemple:

Colonne A Colonne B

1- A -Dégats des Eaux au 1er risque:

2- Dommages matériels : ................ 00 F CFA
3- Frais de recherche de fuites : ........ 00 FCFA
4- Franchise:10% mini 100 000 F cfa
 

job75

XLDnaute Barbatruc
Re : Masquer le lignes sur excel avec vba

Bonjour soumus, bienvenue sur XLD,

Pas très clair sur ce que vous indiquez en colonne B...

Mais je comprends que vous voulez masquer les lignes des garanties quand en colonne B la cellule est égale à 0 ou est vide.

1) Sélectionnez le tableau des garanties, menu Insertion-Nom-Définir et nommez la plage Tablo.

2) Créez un bouton avec la Boîte à outils Contrôles. Si vous ne savez pas faire, dites-le, on vous aidera.

3) Dans le code de la feuille (clic droit sur l'onglet et Visualiser le code), mettre cette macro :

Code:
Private Sub CommandButton1_Click()
Dim test As Byte, cel As Range
Application.ScreenUpdating = False
test = InStr(CommandButton1.Caption, "Afficher")
CommandButton1.Caption = IIf(test, "Masquer les garanties non accordées", "Afficher toutes les garanties")
For Each cel In [Tablo].Resize(, 1)
If cel <> "" And cel.Offset(, 1) = 0 Then cel.EntireRow.Hidden = test = 0
Next
End Sub

4) Cliquez sur le bouton : les garanties non accordées se masqueront ou s'afficheront.

A+
 

Statistiques des forums

Discussions
312 333
Messages
2 087 378
Membres
103 529
dernier inscrit
gonzi