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 :

Fermer un formulaire et quitter Excel


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Novembre 2018
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Fermer un formulaire et quitter Excel
    Bonjour,

    J'ai créé un formulaire Excel de saisie et pour ne pas donner accès aux Feuilles j'ai mis la procédure ci-dessous dans ThisWorkbook.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Workbook_Open()
    Excel.Application.Visible = False
    Load UserForm1
    UserForm1.Show
    End sub
    Pour quitter le formulaire, j'ai mis un bouton quitter avec le code ci-dessous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub quitter_Click()
     Unload Me
     ActiveWorkbook.Close
    End sub
    Après fermeture du formulaire par le bouton quitter, si je redémarre Excel de nouveau il m'ouvre directement le classeur contenant le formulaire en me donnant accès aux feuilles
    Je souhaite que les futurs utilisateurs ne puissent pas accéder aux feuilles quelle que soit la façon dont ils ouvrent et ferment le formulaire, que dois-je ajouter dans mon code pour que cela soit possible ?

    D'avance MERCI pour votre aide.

  2. #2
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 475
    Points : 5 630
    Points
    5 630
    Par défaut
    Bonjour,

    Utilises un xla(m)
    Cordialement,
    Patrice
    Personne ne peut détenir tout le savoir, c'est pour ça qu'on le partage.

    Pour dire merci, cliquer sur et quand la discussion est finie, penser à cliquer sur

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par DataAnalyst Voir le message
    J'ai créé un formulaire Excel de saisie et pour ne pas donner accès aux Feuilles j'ai mis la procédure ci-dessous dans ThisWorkbook.
    Rien de plus facile à contourner : il suffit, à l'ouverture du fichier, de demander de ne pas activer les macros et toutes tes protections partent en fumée.

    On le répète : VBA et sécurité, ça ne va pas ensemble.
    Pour espérer faire quelque chose d'un tout petit peu sérieux, il faudra passer au moins par Visual Studio (même si ça aura du mal à résister à quelqu'un de déterminé).

    En VBA, la sécurité peut permettre, au mieux, à empêcher les maladresses des utilisateurs.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  4. #4
    Expert éminent
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Points : 7 149
    Points
    7 149
    Billets dans le blog
    7
    Par défaut
    Rien de plus facile à contourner
    Si:
    - le projet VBA est verrouillé. La procédure d'affichage étant privée.
    - les feuilles sont masquées à la sauvegarde, à l'ouverture et à la fermeture du classeur
    - l'affichage d'une feuille masquée, sauf erreur, entraîne son activation. Alors son affichage peut être géré par l'évènement Activate en fonction du username (celui de notre ami)
    (je viens de tester)

    Mais cela fait beaucoup de "Si" et nous ne connaissons pas la suite du développement.
    Et j'ai peut-être oublié un contournement.

    Bien Cordialement.

    Marcel

    Dernier billet:
    Suppression des doublons d'un tableau structuré, gestion d'un array

    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    re
    ca va vous paraitre compliqué mais pourtant ca fonctionne
    perso j'ai un fichier dont je ne veux pas voir les feuilles
    j'ai donc créé un classeur source et un classeur avec mon code pour acceder a ce classeur ou se trouve mes données
    dans le classeur d'acces j'ai obfusqué le code
    le nom du classeur source est innacessible car le code vba dans le module c'est du charabia
    l'obfuscation du code rallenti severement les petit malins
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #6
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Novembre 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Novembre 2018
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Patrice740 Voir le message
    Bonjour,

    Utilises un xla(m)
    Merci infiniment pour vos réponses, j'ai testé la solution xlam et cela me convient parfaitement.

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

Discussions similaires

  1. [VBA_E]Fermer fichier et quitter excel
    Par zoumzoum59 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/04/2020, 20h22
  2. [XL-2016] Fermer fichier en enregistrant et quitter Excel
    Par retraite83 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 25/05/2018, 16h07
  3. Fermer tous les formulaires actifs dans excel ?
    Par bernard_metz dans le forum Excel
    Réponses: 1
    Dernier message: 08/04/2014, 02h44
  4. Fermer la fentre sans quitter le programme?
    Par tomburn dans le forum OpenGL
    Réponses: 13
    Dernier message: 06/12/2004, 17h02
  5. code pour fermer un formulaire
    Par rippey dans le forum IHM
    Réponses: 2
    Dernier message: 21/10/2003, 15h51

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