Supprimer une ligne en VBA

Résolu
elise -  
 elise -
Bonjour,

j'ai un bout de programme qui efface une ligne dont la deuxième colonne est nulle

Dim k As Long
Dim n As Long

For k = 0 To nbdefos - 1
If (Cells(k + 4, 2) > -3) Or (Cells(k + 4, 2) < -11.4) Then
Rows(k + 4).Select
Selection.ClearContents
n = n + 1
End If
Next

je voudrai plutôt supprimer la ligne, j'ai essayé:
q=k+4
Rows("q:q").Select
Selection.Delete Shift:=xlUp

ça ne fonctionne pas quand j'utilise une variable quelle que soit le type
avez -vous une idée du problème svp?

merci beaucoup
Configuration: Windows Vista
Firefox 2.0.0.14

5 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonsoir,

    Donne le n° de ligne à rows() :

    For k = 0 To nbdefos - 1
    If (Cells(k + 4, 2) > -3) Or (Cells(k + 4, 2) < -11.4) Then
    Rows(k + 4).Delete Shift:=xlUp
    n = n + 1
    End If
    Next k

    Ca ne supprime la ligne dont la 2nde colonne est vide mais celle qui répond aux critères >-3 et <-11.4...
    eric
    0
  2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonsoir elise,

    Au lieu de:
    q=k+4
    Rows("q:q").Select
    Selection.Delete Shift:=xlUp

    essaies
    q=k+4
    Rows(q).delete

    Cordialement,

    Michel
    0
  3. elise
     
    bonsoir

    j'ai trouvé pourquoi la fonction supprimer ne fonctionne pas, c'est parce qu'elle travaille dans un autre fichier que celle que je veux
    mais ce que je ne comprend pas c'est pourquoi la fonction selection.clearcontents fonctionne dans le bon fichier et pas la fonction supprimer
    vous auriez une idée?
    0
  4. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Re,

    Bonsoir Eric, excuses moi, je n'avais pas rafraichi!

    Elise

    rows("q:q") est faux comme je te l'ai indiqué mais peut-^tre que nos posts se sont croisés
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. elise
     
    j'ai trouvé la solution

    en fait j'ai un problème dans la gestion de mes indices, comme je supprime des lignes les indices de cellules ne correspondent plus

    merci à vous deux de m'avoir aider
    bonne soirée
    0