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 :

Effacer cellules non verrouillées classeur [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 22
    Points : 12
    Points
    12
    Par défaut Effacer cellules non verrouillées classeur
    Bonjour à tous

    J'ai un classeur Excel contenant 3 feuilles de calcul dont les deux dernières dépendent de la première. Comment faire une macro associée à un bouton sur la première feuille qui n'effacerait que les cellules déverrouillées de l'ensemble du classeur, sans avoir à les sélectionner une à une sur l'ensemble des feuilles pour faire la macro, les cases non verrouillées étant regroupées deux par deux et il y en a pas mal...

    Merci d'avance pour votre aide ;

    Bien cordialement ;

    JP

  2. #2
    Expert confirmé Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Points : 4 299
    Points
    4 299
    Par défaut
    Salut,

    au départ je me suis dit, "je ne vais pas lui donner la solution toute crue". Mais comme çà fait deux imbrications de for each ...

    Voila un bout de code avec les commentaires (c'est toujours mieux)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub videtableaux()
    Dim C As Range
    Dim F As Worksheet
    'boucle pour passer en revue toutes les feuilles
        For Each F In Worksheets
            'on active la feuille à traiter
            F.Activate
            'boucle pour tester les cellules vérouillées ou non
            For Each C In Range("A1:F50")  '<-- à adapter
                'si la cellule n'est pas vérouillée on efface
                If C.Locked = False Then C.ClearContents
            Next
        Next
    End Sub
    La partie en rouge est à modifier. Ne pas hésiter à être large
    Jérôme

    " Je pense donc je suis. Tu es donc j'apprends ". (GCM)

    Si ce message vous à aidé, merci de cliquer sur . Si ce message est résolu, cliquez sur .

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 22
    Points : 12
    Points
    12
    Par défaut
    Merci ! Super ! Du coup, j'ai ajouté des p'tits trucs...

    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
    Sub tableau_individuel()
     
    Application.ScreenUpdating = False
     
    'Msgbox Ok + Annuler
     yourmsgbox = MsgBox("Êtes-vous sûr de vouloir effacer ce classeur entièrement ?", vbOKCancel, "Confirmation")
     
    If yourmsgbox = vbCancel Then
        Exit Sub
    End If
     
    Dim C As Range
    Dim F As Worksheet
    'boucle pour passer en revue toutes les feuilles
        For Each F In Worksheets
            'on active la feuille à traiter
            F.Activate
            'boucle pour tester les cellules vérouillées ou non
            For Each C In Range("A1:T50")  '<-- à adapter
                'si la cellule n'est pas vérouillée on efface
                If C.Locked = False Then C.ClearContents
            Next
        Next
     
      Application.Goto (ActiveWorkbook.Sheets("Poules de classement").Range("B9"))
     
    End Sub
    Encore merci !

    JP

  4. #4
    Candidat au Club
    Homme Profil pro
    Ingénieur Géomètre
    Inscrit en
    Juillet 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Ingénieur Géomètre
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1
    Points : 2
    Points
    2
    Par défaut
    J'ai plusieurs feuilles Excel, je veux l'appliquer que sur les feuilles "paramètre 1","paramètre 2" et "BASE DE DONNÉES"

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

Discussions similaires

  1. [Toutes versions] la Protection feuille bloque les cellules non verrouillées
    Par Prado77 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/11/2013, 12h03
  2. [XL-2010] Trouver la dernière cellule non vide dans un classeur excel fermé
    Par julienIS dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 27/03/2013, 11h49
  3. [XL-2010] Dernière cellule non vide de la colonne A d'un classeur fermé
    Par modus57 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/09/2011, 20h14
  4. Selection des cellules non verrouillées
    Par stounouslous dans le forum Excel
    Réponses: 2
    Dernier message: 01/03/2008, 18h23
  5. derniere cellule non vide d'un classeur fermé
    Par la-breche dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 20/03/2007, 21h09

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