2010-08-28 4 views
0

J'ai une plage en Excel nommée "ValuesRange" située à la cellule "B5". J'ai quatre valeurs: 3,4,5,6 situées aux cellules B6, B7, B8, B9 respectivement. Étant donné que B10 est toujours vide. comment peut supprimer les quatre valeurs une par une? Voici le code que j'ai utilisé:Comment supprimer les valeurs d'une plage dans Excel VBA

Dim startRange as Range 


Set startRange= Range("ValuesRange").offset.(1,0) 

While Not IsEmpty(startRange) 
startRange.value= " " 
startRange=startRange(1,0) 
Wend 

Ce code ne fonctionne pas. ce qu'il fait est qu'il supprime les premières valeurs (3) et ensuite le remplace par le numéro 4 et continue à le faire en boucle infinie. aidez-moi s'il vous plaît à corriger ce code. Merci beaucoup!

Répondre

0

est ici une façon:

Public Function ClearCellsBelowValuesRange() 
Dim Rng As Excel.Range, offset As Integer 
    Set Rng = ThisWorkbook.Worksheets("Sheet1").Range("ValuesRange") 
    offset = 1 
    Do 
     Rng.offset(offset, 0).Value = "" 
     offset = offset + 1 
    Loop Until IsEmpty(Rng.offset(offset, 0).Value) 
End Function 
+0

Parfait! Merci beaucoup pour votre aide! – guest1

0

Si vous voulez simplement supprimer les valeurs que vous pouvez essayer:

startRange.Select 
Selection.ClearContents 
Questions connexes