IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Recadrer les feuilles d'un classeur [XL-365]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut Recadrer les feuilles d'un classeur
    Bonjour

    je constate que certains utilisateurs sont perdus lorsqu'ils ont décalé leur feuille à droite ou vers le bas avec l'ascenseur ou le curseur

    j'ai donc cherché une solution simple pour afficher les feuilles comme elles sont à l'origine, j'ai essayé plusieurs solutions et 2 solutions me semblent mieux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Worksheet_Activate()
    ActiveWindow.ScrollRow = 1
    ActiveWindow.ScrollColumn = 1
    End Sub
    Cette solution me conviendrait bien car standard pour toutes les feuilles visibles à l'utilisateur mais je constate que si la ligne 1 est bien recadrée la colonne 1 quand à elle ne se recadre pas systématiquement

    Autre solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private Sub Worksheet_Activate()
    ActiveSheet.Unprotect Password:=mp
    Application.Goto Reference:=ActiveSheet.Range("A1"), Scroll:=True
    ActiveSheet.Protect Password:=mp, DrawingObjects:=False, Contents:=True, Scenarios:=True
    End Sub
    Cette solution marche bien mais à l'inconvénient de devoir déprotéger et reprotéger la feuille avec le risque d'erreur sur les paramètres

    La 1ere solution me conviendrai mieux si je comprenai pourquoi elle ne recadre pas sur la colonne 1

    Avez-vous une autre solution ?

  2. #2
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut
    En fait j'ai compris

    la solution 1 marche si toute la ligne 1 ou toute la colonne 1 est hors de l'écran

    S'il reste "un bout" de la ligne ou de la colonne visible le recadrage ne se fait pas

    Donc la solution 2 recadre mieux

  3. #3
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    988
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 988
    Par défaut
    Salut,
    Et si tu ajoutais simplement Range("A1").Select à ta première solution au début de la Sub ?

  4. #4
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut
    Salut Franc

    oui ça marche à condition de sélectionner ensuite la 1ere cellule active de l'écran sinon le curseur reste en A1

  5. #5
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    988
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 988
    Par défaut
    Tu veux dire revenir à la cellule qui était active avant le scroll ?

  6. #6
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut
    A la 1ere cellule déprotégée de la feuille, pour la saisie de l'utilisateur.

    Par exemple si une seule cellule déprotégée dans la feuille en C5, le curseur est en A1 avec Range("A1").Select dans la Sub bien que la feuille soit protégée

    Je trouve cela curieux, je n'avais jamais remarqué

  7. #7
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    988
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 988
    Par défaut
    je comprends pas bien, ta feuille est protégée sauf C5 et c'est là que tu veux revenir ou tu veux trouver la première cellule de ta feuille qui n'est pas protégée ?

  8. #8
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut
    oui c'est ça ma feuille est protégée sauf C5 et c'est là que je veux revenir

    donc j'ai ajouté range("C5").select

  9. #9
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    988
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 988
    Par défaut
    C'est donc résolu ?

  10. #10
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut
    Pas complétement

    je m'explique. Si la colonne A n'est pas totalement hors de l'écran (encore visible en partie) alors le cadrage ne se fait pas

    C'est du détail mais j'aimerai bien trouver une solution complète

  11. #11
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    988
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 988
    Par défaut
    Tu peux fournir la macro complète avec l'ajout que tu as fait ?

  12. #12
    Membre éprouvé
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2017
    Messages : 1 274
    Par défaut
    J'ai compris
    j 'ai ajouté le code dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub Worksheet_Activate()
    mais la feuille a aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub Worksheet_Change(ByVal Target As Range)
    je dois aussi mettre le code dans cette macro de la feuille

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. effacer toutes les feuilles d'un classeur commencant par "GRAPH"
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/11/2007, 19h40
  2. Comment parcourir toutes les feuilles d'un classeur excel?
    Par Subkill dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/02/2007, 20h47
  3. [VBA]activer les feuilles d'un classeur Excel
    Par jemigo dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/01/2006, 17h58
  4. Action sur toutes les feuilles d'un classeur
    Par beurnoir dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 23/12/2005, 15h11
  5. [VBA-E] Ordonner les feuilles d'un classeur
    Par ptitsoleil87 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 19/12/2005, 16h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo