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 :

Protection de saisie dans un classeur


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Février 2005
    Messages
    29
    Détails du profil
    Informations personnelles :
    Âge : 69

    Informations forums :
    Inscription : Février 2005
    Messages : 29
    Par défaut Protection de saisie dans un classeur
    Bonjour,

    j'ai un classeur dans lequel je voudrais donner des droits particulier..

    Pour l'admin:
    Tous le droits

    Pour le visiteur
    Modifications Non autorisées
    Ecriture autorisée seulement dans les cellules vides avec uniquement
    la possibilité de mettre un texte que j'aurais identifié au préalable...

    Peux t'on m'indiquer une piste pour démarage
    Merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Bonjour Patrick,
    Ton problème peut se régler de plusieurs manières et demande plusieurs solutions.
    Déjà, tu peux protéger ton classeur en empêchant les modifications manuelles de données mais les autorisant par macro.
    Ensuite, tu peux verrouiller ou déverrouiller les cellules dans une feuille protégée.
    Par défaut, toutes les cellules sont verrouillées et empêchent la saisie dans une feuille protégée.
    Mais tu peux sélectionner d'un seul coup d'un seul toutes les cellules vides pour les déverrouiller avant de protéger la feuille.
    Tu peux aussi identifier le "User" qui, s'il n'est pas l'admin, ne pourra pas accéder aux données verrouillées.
    Tu peux automatiser la déprotection si l'admin est le "user"
    Tu peux aussi protéger les macros.

    Dans ces options, lesquelles t'intéressent ?
    A+

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Comme je vais passer à autre chose, quelques indications
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub DeverrouillerCellulesVides()
    Dim utilisateur as string
        utilisateur = Environ("USERNAME")
        'déprotection de la feuille si Utilisateur = Nom de l'admin
        If utilisateur = "admin" Then 'remplace par ton nom d'utilisateur
            Worksheets("Feuil1").Unprotect "admin"
            'déverrouillage des cellules vides
            Worksheets("feuil1").Cells.SpecialCells(xlCellTypeBlanks).Locked = False
            'protection de la feuille autorisant les modifications par macro
            Worksheets("feuil1").Protect Password:="admin", DrawingObjects:=True, Contents:=True, Scenarios:=True, UserInterfaceOnly:=True
        End If
    End Sub
    où UserInterfaceOnly:=True permet aux macros de modifier les cellules verrouillées dans une feuille protégée
    A plus tard

  4. #4
    Membre averti
    Inscrit en
    Février 2005
    Messages
    29
    Détails du profil
    Informations personnelles :
    Âge : 69

    Informations forums :
    Inscription : Février 2005
    Messages : 29
    Par défaut
    Salut ouskel'n'or et merci pour ta réponse
    j'ai utilisé le code il fonctionne trés bien mais résoud en partie ma recherche..

    Pour essayer de résumer..
    j'aimerai que les visiteurs puissent saisir dans une feuille protégée
    1 Uniquement dans les cellules vides
    2 Uniquement la valeur "CP" par exemple.

    Le possesseur aurait bien sur tous les droits..

    Je cherche...

    Merci pour l'aide, c'est une base, et en même temps si on peut avancer ensemble ça sera volontiers

    Merci
    Patrick

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Je te propose une solution simpliste à placer dans la feuille de code de la feuille de calculs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target <> "" And Target <> "CP" Then
            Target = ""
            Target.Select
        End If
    End Sub
    En partant de là on devrait pouvoir trouver "quelque chose"
    A+

    PS - pour faire ça, il faut interdire l'accès aux cellules verrouillées (Contents:=True dans Protect)

Discussions similaires

  1. Réponses: 18
    Dernier message: 23/12/2011, 21h11
  2. Protection de champs de saisie dans Word 2000
    Par keketteboy dans le forum Word
    Réponses: 13
    Dernier message: 02/09/2008, 20h06
  3. Mémoriser les saisies de mon USF dans mon classeur
    Par etorria dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/03/2008, 22h59
  4. limiter la saisie dans un edit à des réels!!!
    Par shout dans le forum Windows
    Réponses: 10
    Dernier message: 21/06/2004, 17h20
  5. saisie dans une fenetre de service
    Par gord's dans le forum Composants VCL
    Réponses: 4
    Dernier message: 05/11/2003, 17h25

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