Effacer toutes les lignes d'un tableau

Fermé
Philour01 Messages postés 1 Date d'inscription samedi 18 mai 2013 Statut Membre Dernière intervention 18 mai 2013 - 18 mai 2013 à 17:01
 Philour01 - 18 mai 2013 à 22:12
Bonjour Mike,
Dans le prolongement de cette macro résolue par tes bons soins (copier les données jusqu'à la derriere ligne), je souhaite maintenant effac?er d'un clic toutes les lignes copiées sur la feuille édit.
Ma fonction fonctionne en partie mais sur une seule ligne de tableau à effacer, empiète sur le texte qui est juste en dessous du tableau et efface du texte.

Merci pour ton aide

Dim I As Long
Dim Plage As Range
Set Plage = Range("E159:E" & Range("E160").End(xlDown).Row)
For I = Plage.Cells.Count To 1 Step -1
Plage.Cells (I).EntireRow.Delete
Next
End Sub
A voir également:

5 réponses

ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
18 mai 2013 à 20:54
Bonsoir

En supposant que tu connais les lignes à supprimer au moment de le faire

Public Sub tamacro()
Dim premli As Long, derli As Long
' les autres instructions de ta macro
' .....
' definition des lignes à supprimer quelque part dans ton code
premli = 4
derli = 12
' ....
' suppression des lignes de premli à derli
Rows(premli & ":" & derli).EntireRow.Delete
End Sub

Attention, les lignes sont supprimées et non effacées

bonne suite
0
Mike-31 Messages postés 18318 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 26 avril 2024 5 076
18 mai 2013 à 21:03
Salut le fil,

Philour, il n'est pas nécessaire d'ouvrir une nouvelle discussion qui ne te conduira à rien, et ce par méconnaissance des codes précédents et tu devrais répondre à mon post de cette la discussion

Je me répète si c'est pour effacer les lignes précédemment copiées, à la place de les copier il suffit de les couper et donc dans le code remplacer Copy par Cut et le tour est joué.
Mais va t'on savoir sans réponse ?
0
Mike,

Je n'avais pas vu ta réponse sur la discussion précédente et le post étant classe résolu et ne connaissant pas la pratique, j'ai posé cette nouvelle question.
Merci pour la réponse.

En cherchant j'ai bidouillé le code suivant qui fonctionne et semble permettre donc d'effacer toutes les lignes d'un tableau sans empiéter sur du texte positionné après et avant le tableau. Si cela peut servir...

Sheets("Edit").Select. ' sélection de ma feuille
Dim DernierLigne As Long
For I =1 To 54. ' 54 étant dernière ligne possible de mon tableau
Range("E159).Select. ' la première ligne du tableau E 159
DernierLigne = Sélection.End(xldown).Row ' recherche la dernière ligne du tableau
If ActiveCell.Value <> 0 Then Sélection.EntireRow.Delete
Next I
End Sub
0
Merci à ccm81 pour sa réponse.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Effectivement Mike, je n'avais pas pensé à cette solution efficace de remplacer copy par cut bien adaptée à mon code.

Encore merci !
0