Masquer ligne n°2 sur certaines feuilles.

LILOUM44

XLDnaute Nouveau
Bonjour à toutes et tous,

Je souhaiterais une aide pour créer une macro afin de masquer la ligne n°2 sur les feuilles suivantes :
- ADMINISTRATEUR
- TEST
- FORMULAIRE.

De plus, pourrez vous également me communiquer la macro inverse afin d'annuler la première macro et donc afficher la ligne n°2 sur ces 3 feuilles.

Merci d'avance

A très bientôt.

Didier
 

CBernardT

XLDnaute Barbatruc
Re : Masquer ligne n°2 sur certaines feuilles.

Bonsoir LILOUM44,

Esssaye cette macro :

Sub MasquerDemasquer()
Dim i As Byte

For i = 1 To Sheets.Count ' Passe en revue toute les feuilles
With Sheets(i)
If .Name = "ADMINISTRATEUR" Or .Name = "TEST" Or .Name = "FORMULAIRE" Then ' Condition de travail dans une feuille
If .Rows(2).EntireRow.Hidden = False Then .Rows(2).EntireRow.Hidden = True ' Masque la ligne
If .Rows(2).EntireRow.Hidden = True Then .Rows(2).EntireRow.Hidden = False 'Démasque la ligne
End If
End With
Next i
End Sub

Cordialement

Bernard
 

LILOUM44

XLDnaute Nouveau
Re : Masquer ligne n°2 sur certaines feuilles.

Merci Bernard pour ta réponse mais étant novice dans VBA je n'arrive pas à l'incorporer dans ma macro actuelle... Peux tu m'aider .
Voici ma macro actuelle (merci pour ton aide) :

Sub DIF_test_dd()

Dim MyMtPss As String
MyMtPss = Application.InputBox("Mot de passe pour continuer")
If MyMtPss <> "xxxxx" Then Exit Sub
MsgBox "Attention, la macro vient d'être éxécutée"
Application.ScreenUpdating = False

Application.ScreenUpdating = False
For Each Feuil In Worksheets
Feuil.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="xxxxx"

' Masquer feuille suite Diffusion
If Feuil.Name = "ESPACE ADMINISTRATEUR" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "structure" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "ACCUEIL" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "ACCUEIL GENERAL" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "MISSIONS ADMINISTRATEURS" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "Feuil3" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "DOCS DIVERS" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "GUIDE METIER" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "GUIDE METIER xx" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "REJETS" Then Feuil.Visible = xlSheetHidden

Next Feuil
End Sub
 

CBernardT

XLDnaute Barbatruc
Re : Masquer ligne n°2 sur certaines feuilles.

Bonsoir LILOUM44,

La macro suivante est un essai avec ce que j'ai pu comprendre de ton projet :

Sub DIF_test_dd()
Dim MyMtPss As String, Feuil As Worksheet
Dim i As Integer, Lig As Long, tablo

MyMtPss = Application.InputBox("Mot de passe pour continuer")
If MyMtPss <> "xxxxx" Then Exit Sub

Application.ScreenUpdating = False

For Each Feuil In Sheets ' Boucle sur les feuilles

Feuil.Unprotect Password:="xxxxx" ' Suppression de la protection

' Masquer feuille suite Diffusion
If Feuil.Name = "ESPACE ADMINISTRATEUR" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "structure" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "ACCUEIL" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "ACCUEIL GENERAL" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "MISSIONS ADMINISTRATEURS" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "Feuil3" Then Feuil.Visible = xlSheetHidden
If Feuil.Name = "DOCS DIVERS" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "GUIDE METIER" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "GUIDE METIER xx" Then Feuil.Visible = xlVeryHidden
If Feuil.Name = "REJETS" Then Feuil.Visible = xlVeryHidden

If Feuil.Name = "RepListeQuellensteuer" Then
With Feuil
Lig = .Range("A65536").End(xlUp).Row ' Dernière ligne du tableau
For i = Lig To 11 Step -1 ' Passage en revue
If .Cells(i, 7) <> 0 And .Cells(i, 8) <> 0 Then
If Round(.Cells(i, 8) / .Cells(i, 7), 3) <> 0.1 And Round(.Cells(i, 8) / .Cells(i, 7), 3) <> 0.045 Then
tablo = Range(.Cells(i, 1), .Cells(i, 10))
Rows(i).Delete
Lig = .Range("A65536").End(xlUp).Row + 1
Range(.Cells(Lig, 1), .Cells(Lig, 10)) = tablo
.Cells(Lig, 9) = "?????"
End If
End If
Next i
End With
End If
'Feuil.Visible = xlVeryHidden ' Masquer la feuille
'Feuil.Protect Password:="xxxxx", DrawingObjects:=True, Contents:=True, Scenarios:=True ' Protection
Next Feuil

MsgBox "La macro vient d'être exécutée avec succès !"
End Sub

Cordialement

Bernard
 

LILOUM44

XLDnaute Nouveau
Re : Masquer ligne n°2 sur certaines feuilles.

non désolé mais ça ne marche pas j'ai l'impression qu'elle boucle car vba ne réponds pas....

Ta macro que tu m as communiqué fonctionne mais après je n'arrive pas à l'insérer.....

A_u secours
 

CBernardT

XLDnaute Barbatruc
Re : Masquer ligne n°2 sur certaines feuilles.

Bonsoir LILOUM44,

Rien ne sers d'appeler au secours !!!:mad:

Si tu veux qu'un forumeur t'aide pour adapter la procédure à ton fichier, il serait bon que tu le mettes en ligne sur le forum en fichier Zip.

Cordialement

Bernard
 

Discussions similaires

Statistiques des forums

Discussions
312 529
Messages
2 089 368
Membres
104 148
dernier inscrit
VICVIC