J’ai crée une courbe en fonction d’un tableau “Feuille 1” et j’aimerai que cette courbe s’auto ajuste sur le graphique si je suprime les dernieres donnée” par exemple Feuille 2” pour que cela soit plus propre.
Pour supprimer une ligne dans un Tableau Structuré (TS), il ne faut pas appuyer sur la touche “Delete” (on obtient alors une ligne vide, à proscrire lorsqu’on utilise les TS).
Il faut faire un clic droit sur une cellule de la ligne à supprimer, puis “Supprimer → Lignes de tableau”
Je suis d’accord, c’était juste pour illustrer la mise à jour de la courbe en général, je vais sur la ligne et supprime carrément la ligne si rien d’autre ne se trouve sur la même ligne à côté du tableau…
Merci pour vos aides,je comprend un peux mieux,pour retirer des données dans une courbe,je ne peux pas simplement effacer les cellules,il faut que je suprimme la ligne.
En faite,j’ai besoin d’effacer des lignes en fonction d’un choix deroulant pour mettre à jour ma courbe sans ses valeurs.
EX:
Dans la cellule M18 si je choisis
- Batt 1 j’aimerai que les lignes 3 jusqu’à 13 soit suprimée
- Batt 2 j’aimerai que les lignes 4 jusqu’à 13 soit suprimée
- Batt 3 j’aimerai que les lignes 5 jusqu’à 13 soit suprimée
- Batt 4 j’aimerai que les lignes 6 jusqu’à 13 soit suprimée
- Batt 5 j’aimerai que les lignes 7 jusqu’à 13 soit suprimée
- Batt 6 j’aimerai que les lignes 8 jusqu’à 13 soit suprimée
- Batt 7 j’aimerai que les lignes 9 jusqu’à 13 soit suprimée
- Batt 8 j’aimerai que les lignes 10 jusqu’à 13 soit suprimée
- Batt 9 j’aimerai que les lignes 11 jusqu’à 13 soit suprimée
- Batt 10 j’aimerai que les lignes 12 jusqu’à 13 soit suprimée
- Batt 11 j’aimerai que la ligne
Sub SupprimerLignesParChoix()
Dim Choix As String, LO As ListObject
Dim i1 As Integer, i2 As Integer, i As Long, s
Choix = LCase(Sheets("feuil1").Range("M18").Value) ' Remplacez "A1" par la cellule contenant la liste déroulante
If Not Choix Like LCase("Batt #*") Then
MsgBox "mauvais choix, cellule M18", vbCritical
Exit Sub
Else
i1 = Val(Mid(Choix, 6)) 'N° du "Batt "
Set LO = Range("tableau1").ListObject 'le tableau structuré avec vos données
If LO.ListRows.Count = 0 Then MsgBox "vide": Exit Sub
With LO.DataBodyRange 'le contenu du TS
For i = .Rows.Count To 1 Step -1
s = LCase(.Cells(i, 1)) 'le batterie
If s Like LCase("Batterie #*") Then
i2 = Val(Mid(s, 10)) 'N° du "Batterie"
If i2 > i1 Then LO.ListRows(i).Delete 'N° plus élevé = supprimer
End If
Next
End With
End If
MsgBox "Les lignes correspondant au choix '" & i1 & "' ont été supprimées.", vbInformation