Sélection Rows avec variable

Bonjour à tous,

J'ai environ 30000 lignes à traiter où je dois toutes les 52 lignes supprimer 14 lignes. Je voudrais donc utiliser la fonction Rows avec une variable pour pouvoir la faire tourner avec une boucle For. C'est là que je coince, je ne connais pas bien cette fonction et je ne sais pas quelle syntaxe utiliser pour cela.

Rows(i:i+13).Select

Voilà ce que je voudrais que le code fasse.

Merci d'avance pour votre aide !

hanz2.0

Salut,

Voici deux possibilités, au choix :

Range(Rows(I), Rows(I + 13)).Select
ou
Rows(I & ":" & I + 13).Select

A+

H

Bonjour,

(ActiveSheet).Rows(i & ":" & i + 13).Delete

Sélection TOUJOURS inutile et ne sert qu'à allonger la durée d'exécution !

NB- Et la qualification, que j'ai matérialisée par ActiveSheet entre parenthèses, mais est à mettre sous bloc With... End With, d'où le point devant .Rows. Cela aussi ACCELERE l'exécution !

Cordialement

bonjour,

Rappel : pour supprimer des lignes (ou des colonnes) c'est plus simple de le faire en marche arrière...

A+

702delrowhanz.xlsm (321.22 Ko)

Bonjour le fil, bonjour le forum,

Rows(I).Resize(13).Select

Mais comme dit Maître FERRAND supprime le Select inutile avec un :

Rows(I).Resize(13).Delete

et dans ce cas ta boucle doit être inversée, de la dernière ligne à la première, avec un Step négatif...

Bonjour à tous,

à tester :

Option Explicit

Sub L14()
Dim i, Last
Dim Rng, RngTot As Range
Last = [J65000].End(xlUp).Row
For i = Last To 1 Step -52
   Set Rng = Rows(i & ":" & i - 13)
   If RngTot Is Nothing Then
      Set RngTot = Rng
   Else
      Set RngTot = Application.Union(RngTot, Rng)
   End If
Next
RngTot.EntireRow.Interior.ColorIndex = 19 ' pour colorer/vérifier :)
'RngTot.EntireRow.Delete shift:=xlUp ' pour effacer
End Sub

galopin01 a écrit :

bonjour,

Rappel : pour supprimer des lignes (ou des colonnes) c'est plus simple de le faire en marche arrière...

A+

Plus logique dirons nous

Bonjour à tous,

Tout d'abord merci pour toutes vos réponses. En effet mon code est très minimaliste et très peu optimisé (pour ainsi dire pas du tout) mais il n'a pas vocation à être réutilisé donc peu importe le temps de traitement tant qu'il fait le job. Mais je note toutes vos indications qui me serviront très certainement à l'avenir !

Cordialement,

hnz.

Bonjour,

J'ai fait un programme qui permet de filtrer les lignes de ton tableau par rapport à tes critères, je te laisse voir le résultat:

J'ai utilisé 2 Sub et une fonction, la fonction permet d'aller chercher une plage de cellules et de la renvoyer, la sub effacefiltre permet de tout afficher, et la sub filtrer permet de cacher les lignes qui ne suivent les critères

Bonjour Ausecour,

je te trouve bien optimiste !

screen

j'ai bien vu la phrase de son dernier post : « Mais je note toutes vos indications qui me serviront très certainement à l'avenir ! », mais vu qu'le post est du 2 février 2017, j'ai quand même un léger doute !

remarque, ton fichier a quand même été téléchargé, mais pas par ton hanz v 2.0. ouf, t'as pas travaillé pour rien !


peut-être que tu nous cache quelque chose, et que ton Heinz tomato ketchup va revenir ?

(t'es medium, et tu l'as vu dans ta boule de cristal ?)

dhany

Oula, je ne sais pas comment j'ai pu écrire ici, je me suis trompé de sujet pour ma réponse

Merci de m'avoir fait la remarque, je m'empresse de répondre sur le bon cette fois

Rechercher des sujets similaires à "selection rows variable"