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 :

execution/suite verouillage


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut execution/suite verouillage
    bonjour à toute l'équipe, je voulais verouiller les cellules de ma feuille pour qu'on puisse pas modifier ça structure, mais comme meme qu'on puisse selectionnées les résultats obtenus, alors moi avec ce code le verouillage ça marche bien mais le probleme quand j'ai essaye de selectionner les colonnes de la feuille pour les copier ailleur, il m'affiche ce message d'erreur: '1004' erreur definie par l'application ou par l'objet, et apres il se point sur ce code????
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Target, Columns("A:G")) Is Nothing Then Target.Offset(0, 1).Activate
    If Not Application.Intersect(Target, Rows("103:104")) Is Nothing Then Target.Offset(1, 0).Activate
    End Sub
    merci par avance

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Application.Intersect(Target, Columns("A:J")) Is Nothing Then Target.Offset(0, 1).Activate
    End Sub
    pour cette feuille j'ai eliminer la deuxième ligne et ça marche , apparment on peut pas faire deux à la fois! mais bon il me reste cette feuille je verouille que la 1ere ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Row = 1 Then Target.Offset(1, 0).Activate
    End Sub
    mais ça marche pas quand j'essaye de selectionner!!! et il se pointe vers
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Target.Offset(1, 0).Activate
    !!franchement je ne sais meme pas à quoi correspond le 0 et le 1; merci

    j'ai constaté quand je fais la selection par ligne il me genere pas de message d'erreur, est ce qu'il y a une explication à ça?? merci

  3. #3
    Membre éclairé Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Par défaut
    si tu veux pas d ennuie utilise la protection d excel , tu peux faire plein de chose avec :


    par exemple ici je protege la feuille pour les utilisateurs mais pas pour vba donc vba peut faire des changements sur la feuille mais pas toi .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, userinterfaceonly:=True
    pour la deproteger
    si tu veux voir tout les fionctionnalite : tape protect method dans l aide VBA.

    @ +

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut
    salut tom, mais moi je veus par exemple ddans un cas particuulier verouiller que la 1ere ligne!!

  5. #5
    Membre éclairé Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Par défaut
    la protection feuille ne protege que les cellules verrouille donc pour verouiller la ligne 1 par exemple tu selectionne toute la ligne et dans protection du coche verouille et pour les lignes que tu ne veux pas verrouille tu fais l inverse et sa fonctionne tres bien

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut dididida
    si j'ai bien compris cette manipulation je dois la faire sous excel à traver le menu: menu protection....cette protection ne me premet pas de proteger qu'un ligne?? et je pense avec ça il y aura un pbm avec vba par la suite!

  7. #7
    Membre éclairé Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Par défaut
    listen me diddidaa. Lol

    par exemple ici je protege la feuille pour les utilisateurs mais pas pour vba donc vba peut faire des changements sur la feuille mais pas toi .


    Code :
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, userinterfaceonly:=Truepour la deproteger

    Code :
    ActiveSheet.Unprotect
    tu utilise ce code en VBA par exemple avec un togglebutton.

    sous excel tu verrouille les cellules que tu veux proteger en faisant clic droit > protection> locked

    si c est une ligne tu selectionnes la ligne si c est plus c est plus et les cellules ou tu veux remplir tu les deverouilles en faisant la manip inverse et pas de probleme avec VBA si tu utilises le code userinterfaceonly:= true

  8. #8
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut
    franchement j'arrive pas à trouvé pareil que toi! moi en faisant un clic droit je n'ai pas protection... et donc moi je fais outils _ protection_ proteger la feuille....bon je pense que c'est un peu compliqué pour moi!!; au fait j'ai une autre question bien précise: pour mon premeir cas (vérouiller toute la feuille) des fois je rencontre un prbleme si j'utilise pas ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [Feuil9].Activate
    'ActiveSheet.Unprotect
    au debut de mon prgramme et des fois non,? je voudrai alors savoir est ce qu'il faut que je le mete debut ou Pas, merci tomy.

  9. #9
    Membre éclairé Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Par défaut
    si tu creer un togglebutton
    avec sa plus besoin de faire feuille : protection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if togglebutton1.value = true then  
    ActiveSheet.Unprotect
    if togglebutton1.value = false then  
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, userinterfaceonly:=Truepour la deproteger
    end if

    regarde ou est ce que tu selectionne tes cellules proteger ou pas Pièce jointe 27135

    pour ta question je ne sais pas .

  10. #10
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut conclusion
    tu sais tom, tu m'as donné plusieurs proposition, alors : pour le cas (verouiller toute la feuille) j'utilise ça et ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, userinterfaceonly:=True
    End Sub
    et pour le deuxieme cas(verouiller juste la 1ere ligne) j'ai utiliser clic droit selectionner veroullier pour la 1ere ligne et ne pas le selectionner pour les autres lignes. mais sans utiliser vba, . dans mon code vba je fais appele à cette ligne el lecture seul, donc ça me pose pas de problem.
    mais n'empeche que j'ai une question et j'espère c la dernière :pour ce qui de la procedure togglebutton () je la met dans le code en cliquant droit sur la feuille voulu! est c'est ce qu'il faut faire? merci encore tomy, je sais que tu as fais beaucoup pour moi, mais sache que tu m'as vraiment aider

  11. #11
    Membre éclairé Avatar de tomy7
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2008
    Messages
    540
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2008
    Messages : 540
    Par défaut
    j espere t avoir aider ...je suis la pour ca aussi.
    tiens tout ce qui te faut est la Pièce jointe 27141

    pour le toggle bouton tu te mets en mode edit et tu double clic dessus et tu mets le code que je t ai donne enfin regarde dans la piece jointe comme c est fait

    Bye

  12. #12
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 171
    Par défaut c tres bien
    merci encore tomy sache que tu m'as vraiment aider du debut à la fin de mon prblem, et en plus j'ai appris des chosesbay

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

Discussions similaires

  1. aides pour recuperer valeur et executer suite du code
    Par jah83 dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 27/06/2010, 22h14
  2. [MySQL] impossible d'executer mes deux updates a la suite
    Par budylove dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 03/05/2006, 14h49
  3. Réponses: 6
    Dernier message: 10/02/2006, 13h46
  4. [Test][Perf]Mesure du temps d'execution différente 2 fois de suite
    Par debdev dans le forum Tests et Performance
    Réponses: 11
    Dernier message: 22/07/2005, 12h04
  5. [.bat][FOR][IF]executer plusieurs commandes a la suite
    Par ¤FRIX¤ dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 23/03/2004, 09h24

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