Création d'un bouton CLEAR

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Luc Lucasse

XLDnaute Occasionnel
Bonjour à tous,

Jes uis nouveau sur le forum est je n'ai pas énormément de connaissances concernant excel alors je vous fais par de mon problême:

Je cherche à créer un bouton "CLEAR" en E2 de la feuille1 et je veux que ca m'efface tout ce qu'il y a d'écrit dans les colonnes de C à R, et dans les colonnes de V à Z, ainsi que les cases S4,T4,U4 et faire ca sur toutes les feuilles sauf la feuille1

Merci pour votre aide si c'est possible 😀
 
Re : Création d'un bouton CLEAR

porcinet82 à dit:
Salut Luc,

Je te propose un fichier qui fait ce que tu souhaites. Tu y trouveras un bouton et le code de la macro (pour le voir, faire Alt+F11, le code etant dans le module de la feuil1).

@+

Merci de ta réponse

Est ce qu'il y a une astuce pour le faire marcher sur toutes les feuilles avec le même bouton parce que je n'y arrive pas??

Merci de ta réponse 😉
 
Re : Création d'un bouton CLEAR

bonjour Luc et Porcinet82,

Porcinet a oublié de spécifier le nom de la feuille avant la méthode Clear... (Rassure-toi Porcinet, ça m'arrive très fréquemment aussi ce genre de blague ;-)


essaie avec ceci :
Code:
    Dim wshFeuille As Worksheet
    
    ' parcourir toutes les feuilles du classeur
    For Each wshFeuille In Sheets
        ' si ce n'est pas Feuil1
        If wshFeuille.Name <> "Feuil1" Then
            ' effacer contenu et formattage des plages spécifiées
            Application.Union(wshFeuille.Range("C:R"), wshFeuille.Range("V:Z"), wshFeuille.Range("S4:U4")).Clear
        End If
    Next
 
Dernière édition:
Re : Création d'un bouton CLEAR

re, Salut Kobaya,

Oupsss, une fois de plus, je suis allé trop vite, donc merci d'etre passé derrière moi pour me reprendre Kobaya 😉
Sinon merci egalement pour le Application.Union que je ne connaissais pas, reste plus qu'a essayer de le retenir maintenant (ca c'est pas gagné 😛 )

Et pour en remettre une petite couche puisque tu t'es amusé a modifier mon code, je fais de meme pour le tiens 😉 :
Code:
Dim wshFeuille As Worksheet
    
    ' parcourir toutes les feuilles du classeur
    For Each wshFeuille In Sheets
        ' si ce n'est pas Feuil1
        With wshFeuille
            If .Name <> "Feuil1" Then
                ' effacer contenu et formattage des plages spécifiées
                Application.Union(.Range("C:R"), .Range("V:Z"), .Range("S4:U4")).Clear
            End If
        End With
    Next

Au plaisir,

@+
 
Re : Création d'un bouton CLEAR

passe d'abord en mode Design (dans la barre d'outils Visual Basic, le bouton avec l'équerre bleue, la règle et le crayon doit être "enfoncé")
sélectionne le bouton, tu copies le bouton et tu le colle là où tu veux. mais attention : en faisant ça, tu ne copies que le bouton, pas le code qui y est attaché !
 
Re : Création d'un bouton CLEAR

Merci pour ta réponse

voila mon code de la feuille 1:


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If [B4] Like "login here" Then

ActiveSheet.UsedRange.Cells.Replace What:="results", _
Replacement:="", LookAt:=xlPart, MatchCase:=False

ActiveSheet.UsedRange.Cells.Replace What:="register", _
Replacement:="", LookAt:=xlPart, MatchCase:=False

End If
End Sub

Private Sub CommandButton1_Click()
Dim wshFeuille As Worksheet

' parcourir toutes les feuilles du classeur
For Each wshFeuille In Sheets
' si ce n'est pas Feuil1
If wshFeuille.Name <> "Feuil1" Then
' effacer contenu et formattage des plages spécifiées
Application.Union(wshFeuille.Range("C:R"), wshFeuille.Range("V:Z"), wshFeuille.Range("S4:U4")).Clear
End If
Next

For Each ws In Sheets
If Not ws.Name = "Feuil1" Then
Range("C:R,V:Z").Clear 'Contents
Range("S4,T4,U4").Clear 'Contents
End If
Next ws

End Sub



Est ce que tu peux me dire stp où est l'erreur parce que ca ne marche pas!!!

Merci pour ton aide
 
Re : Création d'un bouton CLEAR

avec ce code, à chaque fois que tu sélectionnes une nouvelle cellule (avec la souris ou avec les flèches de déplacement), la procédure Worksheet_SelectionChange remplace les cellules contenant "results" ou "register" par "" (une chaîne vide) si la cellule B4 contient "login here"

que souhaites-tu faire exactement ? si c'est vider les cellules contenant "results" ou "register" quand B4 ="login here", ce serait mieux avec :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$4" Then
        ActiveSheet.UsedRange.Cells.Replace What:="results", _
            Replacement:="", LookAt:=xlPart, MatchCase:=False
        ActiveSheet.UsedRange.Cells.Replace What:="register", _
            Replacement:="", LookAt:=xlPart, MatchCase:=False
    End If
End Sub
d'autre part, dans la procédure CommandButton1_Click, il y a trop de lignes. laisse seulement celles-ci (j'ai rajouté le With / End With pour faire plaisir à Porcinet82 😉) :
Code:
Private Sub CommandButton1_Click()
    Dim wshFeuille As Worksheet
    
    ' parcourir toutes les feuilles du classeur
    For Each wshFeuille In Sheets
        With wshFeuille
            ' si ce n'est pas Feuil1
            If .Name <> "Feuil1" Then
                ' effacer contenu et formattage des plages spécifiées
                Application.Union(.Range("C:R"), .Range("V:Z"), .Range("S4:U4")).Clear
            End If
        End With
    Next
End Sub
 
Re : Création d'un bouton CLEAR

  • qu'est-ce que tu as comme message d'erreur (s'il y a en a) ?
  • le bouton s'appelle bien CommandButton1 ?
  • la procédure CommandButton1_Click() se trouve-t-elle dans le module de code de de la feuille contenant CommandButton1 ?
 
Re : Création d'un bouton CLEAR

Kobaya à dit:
  • qu'est-ce que tu as comme message d'erreur (s'il y a en a) ?
  • le bouton s'appelle bien CommandButton1 ?
  • la procédure CommandButton1_Click() se trouve-t-elle dans le module de code de de la feuille contenant CommandButton1 ?

- Je n'ai pas de message d'erreur
- quand je clique sur le bouton j'ai =INCORPORER("Forms.CommandButton.1";"") donc j'en déduis qu'il a bien le bon nom
- Cette procédure se trouve bien dans le module de code de la feuille 1

Merci de ta réponse
 
Re : Création d'un bouton CLEAR

Kobaya à dit:
c'est que tu es en mode Design. Pour en sortir, clique sur le bouton "Désactiver le mode création" (l'équerre bleue avec la règle et le crayon jaune)

J'ai été obligé de faire comme ca pour voir le nom du bouton mais aprés je l'ai désactivé!!!

Je vois toujours pas d'ou ca peut venir??

Est ce que tu l'as essayer??

Merci de ta réponse
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
783
Compte Supprimé 979
C
Retour