appliqué macro sur 2 feuilles ?  Sujet résolu

Pour toutes vos questions à propos d'Excel ...

appliqué macro sur 2 feuilles ?  Sujet résolu

Messagepar kikim78 » 16 Oct 2009, 19:04

Re forum,

comment doit je modier la macro pour afficher les colonnes aussi pour page1 et page2 simultanement?
"là c'est juste pour page1.

Sub VoirColonne()
Dim Cl As String
Cl = InputBox("mot de passe ?")
If Cl = "ops" Then
With Sheets("page1")
.Unprotect 'Password:="xxx"
.Range("j:j, k:k, l:l, m:m, n:n").EntireColumn.Hidden = False
.Protect 'Password:="xxxx"
End With
Else
MsgBox ("faux !")
End If
End Sub
kikim78
Membre fidèle
 
Messages: 167
Inscription: 12 Oct 2009, 12:55
Version Excel: 2007

Messagepar Math » 16 Oct 2009, 19:37

Bonjour,

tu pourrais créer un tableau avec le nom de tes feuilles à traiter et ensuite faire une boucle pour traiter chaque item du tableau:

Code: Tout sélectionner
Sub VoirColonne()
    Dim Cl As String
    Cl = InputBox("mot de passe ?")
    If Cl = "ops" Then
        Dim ListeFeuille(0 To 1) As String
        ListeFeuille(0) = "Page1"
        ListeFeuille(1) = "Page2"

        For i = 0 To UBound(ListeFeuille)
            With Sheets(ListeFeuille(i))
                .Unprotect 'Password:="xxx"
                .Range("j:j, k:k, l:l, m:m, n:n").EntireColumn.Hidden = False
                .Protect 'Password:="xxxx"
            End With
        Next i
    Else
        MsgBox ("faux !")
    End If
End Sub
Avatar de l’utilisateur
Math
Membre dévoué
 
Messages: 726
Inscription: 05 Déc 2007, 18:57
Localisation: Québec, Canada
Version Excel: 2003 FR

Messagepar Nad-Dan » 16 Oct 2009, 19:43

Bonsoir

Code: Tout sélectionner
Sub VoirColonne()
Dim Cl As String
Cl = InputBox("mot de passe ?")
If Cl = "ops" Then
x = Array("Page1", "Page2")
For i = 0 To 1
Sheets(x(i)).Unprotect
Sheets(x(i)).Range("j:j, k:k, l:l, m:m, n:n").EntireColumn.Hidden = False
Sheets(x(i)).Protect
Next
Else
MsgBox ("faux !")
End If
End Sub


Amicalement
Nad
Nad-Dan
Modérateur
 
Messages: 7309
Inscription: 27 Avr 2007, 15:30
Localisation: Nad à Dax (France) - Dan à Liège (Belgique)
Version Excel: 2003 FR-2007 FR-MAC 2004 FR

Messagepar kikim78 » 17 Oct 2009, 00:53

Re
voilà j'ai essayé un code pour masquer et afficher des colonnes mais sa marche pas pour masquer ?
priere me corriger l'erreur svp

Sub VoirColonne()
Dim Cl As String
Cl = InputBox("mot de passe ?")
If Cl = "toto" Then
Dim ListeFeuille(0 To 1) As String
ListeFeuille(0) = "page1"
ListeFeuille(1) = "page2"
For i = 0 To UBound(ListeFeuille)
With Sheets(ListeFeuille(i))
.Unprotect 'Password:="ops"
.Range("j:j, k:k, l:l, m:m, n:n").EntireColumn.Hidden = False
.Protect 'Password:="ops"
End With
Else
MsgBox ("faux !")
End If
End Sub
Sub MasqueColonne()
Dim ListeFeuille(0 To 1) As String
ListeFeuille(0) = "page1"
ListeFeuille(1) = "page2"
For i = 0 To UBound(ListeFeuille)
With Sheets(ListeFeuille(i))
.Unprotect 'Password:="dudu"
.Range("j:j, k:k, l:l, m:m, n:n").EntireColumn.Hidden = True
.Protect 'Password:="dudu"
End With
End Sub
kikim78
Membre fidèle
 
Messages: 167
Inscription: 12 Oct 2009, 12:55
Version Excel: 2007

Messagepar Usb512 » 17 Oct 2009, 01:21

Salut le forum

Merci d'éditer ton message et de mettre ton code en balise.

Tu sélectionne ton code et tu clique sur Code en haut de la fenêtre, cela donne une
meilleur visibilité pour les intervenants.

Mytå
.Image.
Avatar de l’utilisateur
Usb512
Membre fidèle
 
Messages: 266
Inscription: 15 Juin 2009, 01:06
Localisation: Québec
Version Excel: 2007 FR

Messagepar Usb512 » 17 Oct 2009, 01:33

Re le forum

Kikim78, tes macros corrigées
Code: Tout sélectionner
Sub VoirColonne()
Dim ListeFeuille(0 To 1) As String
Dim Cl As String

ListeFeuille(0) = "page1"
ListeFeuille(1) = "page2"


Cl = InputBox("mot de passe ?")
If Cl = "toto" Then
  For i = 0 To UBound(ListeFeuille)
    With Sheets(ListeFeuille(i))
      .Unprotect 'Password:="ops"
      .Columns("I:N").EntireColumn.Hidden = False
      .Protect 'Password:="ops"
    End With
Next i
Else
  MsgBox ("Permission refusée !")
End If

End Sub

Sub MasqueColonne()
Dim ListeFeuille(0 To 1) As String

ListeFeuille(0) = "page1"
ListeFeuille(1) = "page2"

For i = 0 To UBound(ListeFeuille)
  With Sheets(ListeFeuille(i))
    .Unprotect 'Password:="dudu"
    .Columns("I:N").EntireColumn.Hidden = True
    .Protect 'Password:="dudu"
  End With
Next i

End Sub


Mytå
.Image.
Avatar de l’utilisateur
Usb512
Membre fidèle
 
Messages: 266
Inscription: 15 Juin 2009, 01:06
Localisation: Québec
Version Excel: 2007 FR

Messagepar kikim78 » 17 Oct 2009, 10:58

Bonjour le forum

Code: Tout sélectionner
Solutation adequate !


Cordialement
kikim78
Membre fidèle
 
Messages: 167
Inscription: 12 Oct 2009, 12:55
Version Excel: 2007


Retourner vers Excel - VBA

 


  • Sujets similaires
    Réponses
    Vus
    Dernier message

Utilisateurs en ligne

Utilisateurs parcourant ce forum: ait haddou, Bing [Bot] et 13 invités