Multipages [Résolu]

Messages postés
11
Date d'inscription
lundi 28 mai 2007
Dernière intervention
18 juillet 2015
- - Dernière réponse :  foxblue - 18 mars 2015 à 18:51
Bonsoir pouvez vous m'aider à
- dans un controle multipage
- sélectionner la page 0 et la mettre en surbrillance ou autre de maniere à bien identifier l'onglet actif
Merci d'avance, cordialement
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
1
Merci
Bonjour,

Peut être une possibilité en utilisant la propriété Enabled des Multipages.
Souci avec cette méthode : elle nécessite de créer deux boutons de commande supplémentaires pour naviguer dans les pages du multipages.....

Les codes :
Dim PageSelect As Byte

Private Sub CommandButton1_Click()
   PageSelect = IIf(PageSelect = 0, MultiPage1.Pages.Count - 1, PageSelect - 1)
   EnabledMulti
End Sub

Private Sub CommandButton2_Click()
   PageSelect = IIf(PageSelect = MultiPage1.Pages.Count - 1, 0, PageSelect + 1)
   EnabledMulti
End Sub

Private Sub UserForm_Initialize()
   PageSelect = 0
   EnabledMulti
End Sub

Sub EnabledMulti()
Dim bCpt As Byte
   With MultiPage1
      For bCpt = 0 To MultiPage1.Pages.Count - 1
         .Pages(bCpt).Enabled = False
      Next bCpt
      .Pages(PageSelect).Enabled = True
      .Value = PageSelect
   End With
End Sub


Le classeur exemple : http://cjoint.com/?ECsloiwWOgf

Nota : ça n'est pas très pratique car on ne peut plus cliquer directement sur l'onglet souhaité...

Merci pijaku 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 101 internautes ce mois-ci

bon exemple que j'ai un peu modifié pour remettre les page accessibles et pouvoir continuer.
Commenter la réponse de pijaku
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
0
Merci
Pour afficher le premier onglet, MPage étant le nom de ton Multipage
Me.MPage.Value = 0

Commenter la réponse de cs_MPi
0
Merci
Merci de ta réponse MPI qui répond en partie à ma question. Est-il possible de mettre l'onglet choisi en surbrillance ou d'une autre couleur ?
Commenter la réponse de foxblue
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
0
Merci
Non, pas à ce que je sache...
Commenter la réponse de cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
0
Merci
Une possibilité à laquelle je pense serait de "tricher" et d'ajouter une image qui épouse la forme de l'onglet et que tu poses au-dessus dudit Tab. Mais je pense que tu devras passer par les APIs et ça risque d'être un peu compliqué.

Tout dépend de tes connaissances en programmation avec API
pijaku
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
-
Salut cs_MPi,

Euh... ou alors, plus simplement :
Private Sub UserForm_Initialize()
   MultiPage1.Style = 1
End Sub
cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
> pijaku
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
-
Effectivement, bonne idée.
On a de la difficulté à lire le texte lorsque sélectionné, mais ça rend bien la surbrillance.
pijaku
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
> cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Dernière intervention
23 août 2018
-
On a de la difficulté à lire le texte lorsque sélectionné, mais ça rend bien la surbrillance.
Peut être que, dans ce cas, l'utilisation d'une api sera plus facile. ;-)
Commenter la réponse de cs_MPi
0
Merci
Merci Pijaku
Ça répond tout a fait à mon pb;
Super
pijaku
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
-
On peut aussi changer la couleur de police :
Private Sub UserForm_Initialize()
   MultiPage1.Style = 1
   MultiPage1.ForeColor = &H8080FF
End Sub
La couleur ne s'applique pas à l'onglet mais au fond page !
Mais le chgt me suffit.
Encore merci
pijaku
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
> foxblue -
Qu'entends tu par :
La couleur ne s'applique pas à l'onglet mais au fond page

Parce que ForeColor c'est juste la couleur de la police...
> pijaku
Messages postés
12247
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
30 novembre 2018
-
Ok mais meme le backcolor ne modifie que le fond page derriere l'onglet en fait !
Commenter la réponse de foxblue

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.