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 VBA et copier/coller


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut Protection VBA et copier/coller
    Bonjour,

    J'ai un petit souci inattendu avec la protection d'une feuille Excel qui est protégée par un petit bout de VBA qui déverrouille toute les cellules puis qui verrouille les cellules qui contiennent une formule.
    Lorsque je copie/colle une valeur extérieure au classeur sur une cellule sans formule (donc dévérouillée), Madame se verrouille "toute seule" sans raison.

    Je planche là dessus mais un petit coup de main m'aiderait bien.

    Voilà le code qui s'exécute à l'ouverture du classeur :

    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
    Private Sub Workbook_Open()
        Dim ws As Worksheet
        Set ws = Sheets("Adhérents")
        'if ws.Protect
        ws.Unprotect
        With ws
            .Cells.Locked = False
            .Cells.SpecialCells(xlCellTypeFormulas).Locked = True
            .Protect UserInterfaceOnly:=True, _
                        AllowFormattingCells:=True, _
                        AllowFormattingColumns:=True, _
                        AllowInsertingHyperlinks:=True, _
                        AllowFiltering:=True
            .EnableSelection = xlUnlockedCells
        End With
    End Sub
    Merci.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 11
    Par défaut
    Je me réponds tout seul.

    La solution est de faire un collage special pour ne copier que du texte mais les utilisateurs n'y penseront jamais.
    Sinon le plus simple c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AllowFormattingCells:=False
    .
    Mais le mieux c'est de passer par l'événement SelectionChange
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Not Target.HasFormula Then
            Target.Cells.Locked = False
        End If
    End Sub

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 03/09/2007, 19h59
  2. [VBA-E]Copier Coller - Meme Mise en Page
    Par Corlo dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/05/2007, 11h19
  3. [VBA-E] Copier coller sous conditions de couleur
    Par titeZ dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 10/04/2007, 18h27
  4. [VBA-E] copier /coller sur test cellule
    Par Portsall dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/05/2006, 22h19
  5. [VBA] Ecrire "Copier/Coller"
    Par malingue dans le forum Access
    Réponses: 8
    Dernier message: 26/04/2006, 10h02

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