userform avec onglet ne fonctionne pas

alainca31

XLDnaute Nouveau
Bonjour
J'ai crée une userform avec plusieurs onglets, en fonction de la personne qui ouvre le programme certain onglet peuvent etre desactivé.
tout cela fonctionné parfaitement sur excel 2003, par contre impossible de le faire fonctionner sur excel 2007 il me mets une erreur 13
si quelqu'un peut me venir en aide merci d'avance
voici une partie du code:
'méthode qui active que certaines pages de l'application
'en fonction des droits de l'utilisateur connecté

Public Sub typeUtil()
Dim p As Page
If id = "util" Then
UserForm1.MultiPage1.Value = 0
Set p = UserForm1.MultiPage1.Pages(0)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(1)
p.Enabled = False
Set p = UserForm1.MultiPage1.Pages(2)
p.Enabled = False
Set p = UserForm1.MultiPage1.Pages(3)
p.Enabled = False
Set p = UserForm1.MultiPage1.Pages(4)
p.Enabled = True
End If
If id = "admin" Then
UserForm1.MultiPage1.Value = 1
Set p = UserForm1.MultiPage1.Pages(0)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(1)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(2)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(3)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(4)
'p.Enabled = True
End If
If id = "superadmin" Then
UserForm1.MultiPage1.Value = 1
Set p = UserForm1.MultiPage1.Pages(0)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(1)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(2)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(3)
p.Enabled = True
Set p = UserForm1.MultiPage1.Pages(4)
p.Enabled = True
End If
Cordialement
 

JNP

XLDnaute Barbatruc
Re : userform avec onglet ne fonctionne pas

Bonsoir Alainca31 :),
Au dessus de la fenêtre de message, il y a un petit # qui permet de mettre des balises pour le code :rolleyes:...
Bon, en supprimant As Page, ça fonctionne.
Mais j'écrirais plutôt comme celà, sans p :p...
Code:
Dim ID As String
If ID = "util" Then
UserForm1.MultiPage1.Value = 0
UserForm1.MultiPage1.Pages(0).Enabled = True
UserForm1.MultiPage1.Pages(1).Enabled = False
UserForm1.MultiPage1.Pages(2).Enabled = False
UserForm1.MultiPage1.Pages(3).Enabled = False
UserForm1.MultiPage1.Pages(4).Enabled = True
End If
If ID = "admin" Then
UserForm1.MultiPage1.Value = 1
UserForm1.MultiPage1.Pages(0).Enabled = True
UserForm1.MultiPage1.Pages(1).Enabled = True
UserForm1.MultiPage1.Pages(2).Enabled = True
UserForm1.MultiPage1.Pages(3).Enabled = True
UserForm1.MultiPage1.Pages(4).Enabled = True
End If
If ID = "superadmin" Then
UserForm1.MultiPage1.Value = 1
UserForm1.MultiPage1.Pages(0).Enabled = True
UserForm1.MultiPage1.Pages(1).Enabled = True
UserForm1.MultiPage1.Pages(2).Enabled = True
UserForm1.MultiPage1.Pages(3).Enabled = True
UserForm1.MultiPage1.Pages(4).Enabled = True
End If
Bon WE :cool:
 

Cousinhub

XLDnaute Barbatruc
Re : userform avec onglet ne fonctionne pas

Bonjour,

Bonjour JNP :), CC :)

Je peux jouer? :D

Code:
Dim ID As String
With UserForm1.MultiPage1
    .Value = IIf(ID = "util", 0, 1)
    .Pages(0).Enabled = True
    .Pages(1).Enabled = IIf(ID = "util", False, True)
    .Pages(2).Enabled = IIf(ID = "util", False, True)
    .Pages(3).Enabled = IIf(ID = "util", False, True)
    .Pages(4).Enabled = True
End With

Bonne nuit
 

Discussions similaires

Réponses
6
Affichages
140
Réponses
2
Affichages
142

Statistiques des forums

Discussions
312 225
Messages
2 086 411
Membres
103 201
dernier inscrit
centrale vet