Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

déplacement dans feuille avec liste validation

  • Initiateur de la discussion Initiateur de la discussion Faberiz
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

F

Faberiz

Guest
Bonsoir le forum,

ci-joint un petit fichier avec 1 peu de code pour commencer ...

bref, voici mon problème : je souhaite me déplacer dans la feuille active en sélectionnant, via un menu déroulant case C2, le jour de la semaine "cicle" et donc pointer vers le bon tableau de la feuille ex: mardi en C26.

la cerise sur gateau serait que tableau s'affiche correctement sur l'écran et pas seulement à moitié, ainsi que ce dernier devienne la nouvelle zone d'impression par défaut...

En espérant avoir été succint et clair, je vous remercie par avance

A+

Fab
 

Pièces jointes

Re : déplacement dans feuille avec liste validation

Bonsoir Faberiz,

Ci-joint ton exemple modifié en essayant de répondre à la lettre à tes demandes.

J'ai utilisé le code ci-dessous :
Code:
[SIZE=2][COLOR=GRAY][B][I]DANS LE MODULE DE CODE DE LA FEUILLE[/I][/B][/COLOR]

[COLOR=NAVY]Private Sub[/COLOR] Worksheet_Change([COLOR=NAVY]ByVal[/COLOR] Target [COLOR=NAVY]As[/COLOR] Range)
[COLOR=GREEN]' myDearFriend! - 15/12/2006[/COLOR]
[COLOR=NAVY]Dim[/COLOR] V [COLOR=NAVY]As Variant
Dim[/COLOR] Cel [COLOR=NAVY]As[/COLOR] Range
[COLOR=NAVY]Static[/COLOR] EnCours [COLOR=NAVY]As Boolean[/COLOR]

    [COLOR=NAVY]If[/COLOR] EnCours [COLOR=NAVY]Then Exit Sub[/COLOR]   [COLOR=GREEN]'Pour empêcher la macro de tourner en boucle[/COLOR]
    
    [COLOR=GREEN]'Cibles => Cellules en colonne C avec liste de validation "= Jours"[/COLOR]
    [COLOR=NAVY]If Not[/COLOR] Application.Intersect(Target, Columns(3).SpecialCells(xlCellTypeAllValidation)) [COLOR=NAVY]Is Nothing Then
        If Not[/COLOR] (ActiveCell.Validation.Formula1 = "=Jours") [COLOR=NAVY]Then Exit Sub[/COLOR]
        [COLOR=GREEN]'Valeur choisie par l'utilisateur[/COLOR]
        V = ActiveCell.Value
        [COLOR=GREEN]'On rétablie la valeur de départ[/COLOR]
        EnCours = [COLOR=NAVY]True[/COLOR]
        Application.Undo
        EnCours = [COLOR=NAVY]False
        If[/COLOR] V = "" [COLOR=NAVY]Then Exit Sub[/COLOR]
        [COLOR=GREEN]'On trouve le jour correspondant dans la colonne[/COLOR]
        [COLOR=NAVY]Set[/COLOR] Cel = Columns(3).Find(V)
        [COLOR=GREEN]'On positionne la feuille, définit la zone imprimable et sélectionne le jour souhaité[/COLOR]
        ActiveWindow.ScrollRow = Cel.Row
        ActiveSheet.PageSetup.PrintArea = Cel.Resize(22, 9).Address
        Cel.[COLOR=NAVY]Select
    End If
End Sub[/COLOR][/SIZE]
Un inconvénient par contre : pas de "blanc" autorisé dans la liste de validation.

Attention, ce code est à tester dans tous les sens, je ne garantie pas sa stabilité.

Cordialement,
 

Pièces jointes

Re : déplacement dans feuille avec liste validation

Bonsoir myDearfriend,

je dis simplement : "chapeau bas"

merci pour cette rapide réponse, qui semble stable...

si je ne me trompe pas il doit y avoir 120 possibilités de tester la chose, et pour en avoir uniquement fait 10, c'est OK pour moi.

J'ai beaucoup à apprendre en VBA, j'espère te renvoyer l'ascenseur à l'occase.

merci encore

ciao

Fab🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
9
Affichages
652
D
Réponses
4
Affichages
1 K
Debutant
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…