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 :

Comment restreindre l'ouverture de mon classeur par username [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut Comment restreindre l'ouverture de mon classeur par username
    Salut le forum

    Après une recherche infructueuse, je souhaite définir mon besoin et obtenir vos solutions.
    En effet, j'ai un classeur que j'utilise dans un cadre professionnel.
    Je souhaite restreindre son utilisation sur un certain nombre de poste selon le username.
    Le username doit être de 5 caractères et toujour commencer par NF.
    Tout username qui ne respect pas ce critère devra entrainer la suppression du fichier du poste de "l'usurpeur".
    Tel est mon critère mais je vous laisse me proposer vos meilleurs critères.
    N.B : tout ce que je souhaite (dans le cadre de la protection de mon outil), si le fichier se trouve sur une autre machine, qu'il ne puisse pas s'ouvrir mais aussi qu'il se supprime automatiquement.
    Merci pour vos compréhension

  2. #2
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    salut dans ce post tu trouveras 2 méthodes

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    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 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut re
    Bonjour

    A part la suppression tout est possible.
    En effet la macro se trouvant dans le classeur même, le dernier ne peut donc pas être supprimé.

    Par contre dans ta macro, tu pourrais ajouter une boucle sur tous tes sheets, (en y ajoutant d'abord un sheet vide bien sûr) et les supprimer quand le username n'est pas le bon. Ainsi le fichier à l'ouverture est vide si les paramètres ne correspondent pas.

    Au plaisir

  4. #4
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    Bonjour

    A part la suppression tout est possible.
    Salut Patrick, suis mon lien tu verras le code de Frederic SIGONNEAU, qui en passant le fichier en lecture seule permet de supprimer le fichier actif.

    edit :tu auras besoin de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     if not left(UCASE(Environ("username")),2)="NF" and len(Environ("username"))<>5

  5. #5
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Salut Oliv, patricktoulon et le forum

    Merci pour vos contributions.
    je pense avoir trouvé comme Oliv me la recommandé.
    Patricktoulon
    A part la suppression tout est possible.
    J'ai testé le code ci-dessous et le fichier se supprime:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Private Sub Workbook_Open()
     
    Dim chemin As String
    chemin = "\\Frsv002818\Données\" & Mid(ActiveWorkbook.FullName, 4)
    If chemin <> "\\Frsv002818\Données\Fichier Excel.xlsm" Then
     
        Dim FName As String
        Dim Ndx As Integer
     
        With ThisWorkbook
            .Save
            For Ndx = 1 To Application.RecentFiles.Count
                If Application.RecentFiles(Ndx).Path = .FullName Then
                Application.RecentFiles(Ndx).Delete
                Exit For
                End If
            Next Ndx
        .ChangeFileAccess Mode:=xlReadOnly
        Kill .FullName
        .Close SaveChanges:=False
        End With
        Exit Sub
     
    End If
     
    Dim Motdepasse As String
    Motdepasse = InputBox("Entrer le mot de passe :", "Déprotéger toutes les feuilles", "")
    For Each i In Worksheets
    i.Unprotect Password:=Motdepasse
    Next
     
    Msgbox("Attention ce fichier ne doit pas changer d'emplacement.")
     
    End Sub
    J'ai testé le code sur un fichier et le fichier s'est supprimé quand j'ai voulu l'ouvrir.
    Ce que je souhaite maintenant faire, c'est de l'adapter à mon cas mais je ne comprend cette partie du code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    chemin = "\\Frsv002818\Données\" & Mid(ActiveWorkbook.FullName, 4)
    If chemin <> "\\Frsv002818\Données\Fichier Excel.xlsm" Then
    Mon chemin d'acces est le suivant :
    C:\Users\BENSPLUS\Desktop\SOCLE\SIFKL.xlxm
    Merci de m'éclairer sur le code tout entier de facon générale afin que je puisse mieux comprendre.

  6. #6
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    tout est dit, maintenant il faut juste assembler le puzzle
    remplace le if (chemin...) par celui que j'ai noté

  7. #7
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2011
    Messages
    571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2011
    Messages : 571
    Points : 93
    Points
    93
    Par défaut
    Salut Oliv

    Juste te dire merci.
    Problème résolu ().

    Cdlt

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/06/2011, 17h38
  2. Réponses: 18
    Dernier message: 11/05/2010, 00h05
  3. Ouverture de feuille auto par username
    Par jef.96 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/03/2009, 16h11
  4. VBA Comment voir à l'ouverture si un classeur est "not respondig"
    Par mayekeul dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/01/2008, 15h24
  5. Protéger mon classeur par mot de passe
    Par Neowile dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/11/2007, 14h32

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