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 :

Amélioration macro "activation macro"


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 9
    Par défaut Amélioration macro "activation macro"
    Bonjour à tous

    j'ai trouvé sur le net une macro qui permet à l'ouverture (d'un fichier contenant une macro) d'afficher si on désactive les macro (car niveau de sécurité trop haut ou la personne qui ouvre le classeur désactive les macro par peur du message) sur la feuille "Alerte macro" un message comme quoi il faut activer les macro pour pouvoir utiliser le classeur et en l'occurrence la Feuill1.

    Cependant comme j'ai d'autre feuille que la feuille 1 si à l'ouverture du classeur on désactive les macros on voit toujours les feuille 2, 3 etc... (pas forcément feuill avec un chiffre).

    j'aimerai qu'il y ait uniquement la feuille "Alerte macro" qui apparaisse et que les autre soit masquer et peut être même si possible que ne puisse pas y accédé (vérouillage) puisque en passant par ce chemin on peut démasquer la feuill1 :
    cliquez sur le menu Format, sur Feuille puis sur Afficher.

    C'est je pourrai répéter Sheets("").Visible = True mais c'est trop lourd.

    1/ Avez une solution à mon problème ?

    La macro est la suivante :
    Code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.ScreenUpdating = False
    Sheets("AlerteMacro").Visible = True
    Sheets("Feuil1").Select 'ou autre page
    ActiveWindow.SelectedSheets.Visible = False
    With ActiveWindow
    .DisplayHorizontalScrollBar = True
    .DisplayVerticalScrollBar = True
    End With
    Application.DisplayFormulaBar = True
    ActiveWindow.DisplayHeadings = True
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Workbook_Open()
    Sheets("Feuil1").Visible = True 'ou autre page
    Sheets("AlerteMacro").Visible = False
    End Sub

    Merci d'avance de votre aide

  2. #2
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour Garion27 le forum deja il vaut mieux utiliser
    xlSheetVeryHidden que .visible=false

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub masquer()
        Dim nbre As Byte, cptr As Byte
        Application.ScreenUpdating = False
        nbre = ThisWorkbook.Sheets.Count
        cptr = 2
        For cptr = 2 To nbre
            Sheets(cptr).Visible = xlSheetVeryHidden
        Next
        Application.ScreenUpdating = False
    End Sub

Discussions similaires

  1. Quote dans macro-variable
    Par fafabzh6 dans le forum Macro
    Réponses: 3
    Dernier message: 23/04/2009, 17h39
  2. [VBA E]activer macro
    Par zoumzoum59 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/06/2006, 17h48
  3. activation macro lors d'une ouverture fichier Excel
    Par mirumoto dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/05/2005, 15h08

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