(RESOLU) Effacer les données d'un tableau sous condition

chaelie2015

XLDnaute Accro
Bonjour Forum
Je souhaite effacer les données du tableau selon la valeur de la cellule G1
Exemple :
SI G1 = 6 Alors quand je clic sur le bouton toutes les données du tableau (a partir de 7 jusqu’au 12) doivent être effacées sauf les cellules rouge
autre exemple:
si G1 = 2 alors quand je clic sur le bouton toutes les données du tableau (a partir de 3 jusqu’au 12) doivent être effacées sauf les cellules rouge
merci
 

Pièces jointes

  • charlie effacer le tableau.xlsx
    9.8 KB · Affichages: 43
Dernière édition:

CPk

XLDnaute Impliqué
Re : Effacer les données d'un tableau sous condition

Bonjour chaelie2015, à mon humble avis, nous tous qui aidons ici, nous méritons un peu plus qu'un fichier excel quasi-vide et avec des cellules fusionnées à tous les carrefours...Allons allons...On se reprends et aidez-nous si vous voulez qu'on vous aide.
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Effacer les données d'un tableau sous condition

Bonjour Chaelie, CPK, bonjour le forum,

Peut-être comme ça :


Code:
Sub Bouton2_Cliquer()
Dim LD As Byte 'déclare la variable LD (Ligne de Départ)
Dim PL As Range 'déclare la variable PL (PLage)

LD = Range("G1").Value + 2 'définit la ligne départ
Set PL = Application.Union(Range(Cells(LD, 2), Cells(13, 5)), Range(Cells(LD, 7), Cells(13, 10))) 'définit la palge PL
PL.ClearContents 'efface le contenu de la palge PL
End Sub
 

chaelie2015

XLDnaute Accro
Re : (RESOLU)Effacer les données d'un tableau sous condition

Bonjour Forum, Robert
encore merci pour la réponse, mais mnt j'ai souhaité ajouter un autre tableau( voir le fichier)
j'ai un message d'erreur.????!!!!
Code:
Sub Bouton2_Cliquer()
Dim LD As Byte 'déclare la variable LD (Ligne de Départ)
Dim PL As Range 'déclare la variable PL (PLage)

Dim LD1 As Byte 'déclare la variable LD (Ligne de Départ)
Dim PL1 As Range 'déclare la variable PL (PLage)
' 1er Tableau
LD = Range("G1").Value + 2 'définit la ligne départ
Set PL = Application.Union(Range(Cells(LD, 2), Cells(13, 5)), Range(Cells(LD, 7), Cells(13, 10))) 'définit la palge PL
PL.ClearContents 'efface le contenu de la palge PL

'2 eme tableau
LD1 = Range("G14").Value + 16 'définit la ligne départ
Set PL1 = Application.Union(Range(Cells(LD1, 2), Cells(23, 5))) 'définit la palge PL
PL1.ClearContents 'efface le contenu de la palge PL
End Sub
merci par avance
 

Pièces jointes

  • charlie effacer le tableau.xlsm
    18.2 KB · Affichages: 44

Shakki

XLDnaute Occasionnel
Re : Effacer les données d'un tableau sous condition

Bonjour,

C'est parce que tu utilises application.union avec une seule plage. Cette méthode nécessite au moins 2 plages.
Je te propose

Code:
Set PL1 = Application.Union(Range(Cells(LD1, 2), Cells(27, 5)), Range(Cells(LD1, 7), Cells(27, 10)))

Si tu souhaites tout effacer, y compris la colonne rouge, il suffit de définir la plage comme suit :

Code:
Set PL1 = Range(Cells(LD1, 2), Cells(27, 10))
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
314 210
Messages
2 107 299
Membres
109 796
dernier inscrit
aelgar