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 :

[VBA-E] empêcher la sélection de certaines plages


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Par défaut [VBA-E] empêcher la sélection de certaines plages
    Une autre énigme mais surement très facile:
    Comment empêcher l'utilisateur de sélectionner des plages?
    Je veux lui montrer une feuille sur laquelle il y a des infos et des boutons. Il ne doit pouvoir toucher qu'aux boutons et à rien d'autre. En plus, aucune cellule ne doit être sélectionnée.
    Je travaille avec le "VBA pour Excel pour les nuls". il est très bien pour débuter mais certains trucs ne sont pas dedans!!
    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
    Protège simplement ta feuille, cellules verrouillée.
    Si besoin est, tu la dé-protège dans le code du bouton et tu la re-protège après.



    PS - Pendant que j'y suis, si masquer un barre de titre d'un userform" t'intéresse toujours, regarde Pièce jointe 9453, tu as le code à mettre dans un module et dans l'userform. Tiré directement de la FAQ

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Par défaut
    Pour le userform, je vais finalement rester avec la barre de titre. Pour l'enlever, on fait appel à windows et un autre truc s'ouvre à coté d'excel. La boîte dans laquelle je travaille est un peu sensible et j'ai le droit de programmer Excel seulement si l'application est autonome et n'interagit pas avec d'autres applications, surtout que ce truc sera ensuite sur un réseau!

    Sinon, je ne sais pas comment verrouiller les cellules. Y'a un code pour ça? (je débute dans le VBA).

  4. #4
    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
    Elle sont verrouillées par défaut. La solution consiste simplement à protéger la feuille.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets(LaFeuille).Protect
    et pour dé-protéger
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Worksheets(LaFeuille).UnProtect
    Entre les deux, tu fais ce que tu veux dans ton bouton en inversant les lignes ci-dessus (!)
    A+

  5. #5
    Expert confirmé
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Par défaut
    Hello,
    1- on masque la barre avec les APIs, les APIs ne sont pas un programme externe, elles font partie de Windows ce qui rend ton appli tout aussi autonome.
    2- Si l'appli est en réseau, ça ne change rien vu qu'Excel ne fonctionne pas en client serveur, et ton code utilisera donc les APIs du poste client (utilisateur) qui dispose lui aussi de Windows et des mêmes APIs.
    3- Si tu débutes en VBA, utilise l'enregistreur de macro ça te permettra de voir que le verrouillage de cellule est relativement simple.


    Citation Envoyé par NicolasMO
    Pour le userform, je vais finalement rester avec la barre de titre. Pour l'enlever, on fait appel à windows et un autre truc s'ouvre à coté d'excel. La boîte dans laquelle je travaille est un peu sensible et j'ai le droit de programmer Excel seulement si l'application est autonome et n'interagit pas avec d'autres applications, surtout que ce truc sera ensuite sur un réseau!

    Sinon, je ne sais pas comment verrouiller les cellules. Y'a un code pour ça? (je débute dans le VBA).

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 51
    Par défaut
    Ok, je commence à comprendre comment fonctionne le verouilage et le déverouillage. Par contre, j'ai une question subsidiaire: Quelle est la différence en worksheets("feuil1").qqchose et sheets("feuil1").qqchose?
    Dans certains cas il faut l'un, dans d'autres cas l'autre...

  7. #7
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Worksheet est une feuille de calcul (la feuille classique avec les quadrillages)
    Sheet est n'importe quel type de feuille Excel (calcul, graphique, dialogue)
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

Discussions similaires

  1. [VBA-Excel] - Empêcher sélection de certaines cellules
    Par Chewi dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/01/2007, 10h04
  2. Empêcher la sélection dans un CEdit
    Par hiko-seijuro dans le forum MFC
    Réponses: 5
    Dernier message: 15/06/2005, 08h47
  3. Sélection d'une plage de dates
    Par Bouanda dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 24/10/2004, 20h27
  4. [JTable] Empêcher sélection de certaines cellules
    Par Oliveuh dans le forum Composants
    Réponses: 6
    Dernier message: 28/07/2004, 12h47
  5. Empécher la sélection du texte des pages dans un WebBrowser
    Par DevelOpeR13 dans le forum Web & réseau
    Réponses: 2
    Dernier message: 05/06/2003, 18h36

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