J'aimerais écrire une macro pour supprimer tous les enregistrements de ma table Excel, à l'exception de la première ligne (comme c'est là que plusieurs formules telles que stockées. Le nombre d'enregistrements dans ma table change, il doit donc être flexible. J'utilise actuellement le code suivant: aide s'il vous plaît!. P> TNX P> P>
3 Réponses :
Vous pouvez le faire comme suit:
Sheets("5. Informatieproducten Index").Range("A2:XFD1048576").Delete
Soyez conscient: vous n'avez mentionné que la première ligne de votre explication, alors j'ai construit cette commande sur la deuxième rangée. Cependant, votre code commence, pas à A2, mais à A6. Je ne sais pas pourquoi, mais vous pourriez faire attention à cela (ne pas trop supprimer).
En détectant la dernière ligne et la dernière colonne de vos données:
Merci beaucoup pour votre soutien à ce sujet! Très appréciée.
Il y a tellement de différentes façons de le faire. Avant tout, vous devez déclarer une variable pour toujours rechercher la dernière ligne de votre table. Ensuite, la prochaine étape consiste à regarder toutes les lignes situées sous la première ligne de votre table et la dernière ligne que vous avez précédemment déclarée. Notez que vous pouvez nettoyer ou supprimer les rangées. Obs: Nettoyer est la méthode que vous conserve le format de votre cellule et de votre table. Supprimer est la méthode que vous supprimez tous les formats.
Sub deleteRows()
Dim wb As Workbook
Dim ws As Worksheet
Dim lastRow As Integer
Dim firstRow As Integer
Set wb = ThisWorkbook
Set ws = wb.Worksheets("5. Informatieproducten Index")
'first Row of your table - you can do diferents things to take always the first row of your table
firstRow = ws.Range("A5").Row
'you need to take care if there is any blank cell in the interval
lastRow = ws.Range("A5").End(xlDown).Row
ws.Range("A" & firstRow & ":A9" & lastRow).EntireRow.Delete
End Sub
Merci beaucoup pour votre soutien à ce sujet! Très appréciée.