J'ai une longue variable X qui contient un nombre. Disons qu'il est 415.
Comment puis-je supprimer tout le contenu de la feuille de calcul de la rangée 415 et inférieure?
Je veux m'assurer que ma feuille de calcul est propre dans la rangée 415 et tout ce qui pourrait être en dessous.
Comment puis-je faire cela? Merci.
Cela ressemble à quelque chose comme ce qui suit va répondre à vos besoins:
With Sheets("Sheet1")
.Rows( X & ":" & .Rows.Count).Delete
End With
Où X est une variable qui = le numéro de la ligne (415)
Une autre option est Sheet1.Rows(x & ":" & Sheet1.Rows.Count).ClearContents
(ou .Clear
). Si vous souhaitez utiliser cette méthode au lieu de .Delete
, c’est parce que toutes les cellules ayant des dépendances comprises dans la plage supprimée (par exemple, les formules qui font référence à ces cellules, même vides) finiront par afficher #REF
. Cette méthode préservera les références de formule aux cellules effacées.
Cette fonction effacera les données de la feuille à partir de la ligne et de la colonne spécifiées:
Sub ClearWKSData(wksCur As Worksheet, iFirstRow As Integer, iFirstCol As Integer)
Dim iUsedCols As Integer
Dim iUsedRows As Integer
iUsedRows = wksCur.UsedRange.Row + wksCur.UsedRange.Rows.Count - 1
iUsedCols = wksCur.UsedRange.Column + wksCur.UsedRange.Columns.Count - 1
If iUsedRows > iFirstRow And iUsedCols > iFirstCol Then
wksCur.Range(wksCur.Cells(iFirstRow, iFirstCol), wksCur.Cells(iUsedRows, iUsedCols)).Clear
End If
End Sub