OVH Cloud OVH Cloud

For i = ?? to 21 en VBA

6 réponses
Avatar
Michel
Bonjour,

j'ai une macro sur une feuille de calcul qui me sélectionne un moment donné
une cellule (cellule alléatoire), et à ce moment je lui donne l'instruction
suivante :

For i = (ligne alléatoire) To 21 Step -12
Rows(i & ":" & i - 20).Select
Rows(i & ":" & i - 20).Delete Shift:=xlUp
i = i - 20
Next

Si je donne un N° de ligne comme par example : For i = 1000 To 21 Step -12,
ma boucle fonctionne, mais comme mon fichier est alimenté par de nouveaux
éléments chaque jour, je ne désir pas ficher la ligne de départ (1000 dans
mon example)

Merci

6 réponses

Avatar
papou
Bonjour
Qu'est ce qui détermine la cellule alléatoire ?
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour,

j'ai une macro sur une feuille de calcul qui me sélectionne un moment
donné

une cellule (cellule alléatoire), et à ce moment je lui donne
l'instruction

suivante :

For i = (ligne alléatoire) To 21 Step -12
Rows(i & ":" & i - 20).Select
Rows(i & ":" & i - 20).Delete Shift:=xlUp
i = i - 20
Next

Si je donne un N° de ligne comme par example : For i = 1000 To 21
Step -12,

ma boucle fonctionne, mais comme mon fichier est alimenté par de nouveaux
éléments chaque jour, je ne désir pas ficher la ligne de départ (1000 dans
mon example)

Merci


Avatar
AV
Pour partir de la dernière ligne de la feuille :

For i = Cells.Find("*", , 1, , 1, 2).Row ....blablabla...

AV
Avatar
Michel
Bonjour Pascal,

En fait je me positionne automatiquement trois cellules en-dessous du
dernier enregistrement avec l'instruction suivante :

Range("a65500").Select
Selection.End(xlUp).Select
Selection.Offset(3, 0).Select

Merci


Bonjour
Qu'est ce qui détermine la cellule alléatoire ?
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour,

j'ai une macro sur une feuille de calcul qui me sélectionne un moment
donné

une cellule (cellule alléatoire), et à ce moment je lui donne
l'instruction

suivante :

For i = (ligne alléatoire) To 21 Step -12
Rows(i & ":" & i - 20).Select
Rows(i & ":" & i - 20).Delete Shift:=xlUp
i = i - 20
Next

Si je donne un N° de ligne comme par example : For i = 1000 To 21
Step -12,

ma boucle fonctionne, mais comme mon fichier est alimenté par de nouveaux
éléments chaque jour, je ne désir pas ficher la ligne de départ (1000 dans
mon example)

Merci







Avatar
papou
Re
Dans ces conditions :
For i = Range("A65500").End(xlUp)(2).Row + 2 To 21 Step -12
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour Pascal,

En fait je me positionne automatiquement trois cellules en-dessous du
dernier enregistrement avec l'instruction suivante :

Range("a65500").Select
Selection.End(xlUp).Select
Selection.Offset(3, 0).Select

Merci


Bonjour
Qu'est ce qui détermine la cellule alléatoire ?
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour,

j'ai une macro sur une feuille de calcul qui me sélectionne un moment
donné

une cellule (cellule alléatoire), et à ce moment je lui donne
l'instruction

suivante :

For i = (ligne alléatoire) To 21 Step -12
Rows(i & ":" & i - 20).Select
Rows(i & ":" & i - 20).Delete Shift:=xlUp
i = i - 20
Next

Si je donne un N° de ligne comme par example : For i = 1000 To 21
Step -12,

ma boucle fonctionne, mais comme mon fichier est alimenté par de
nouveaux



éléments chaque jour, je ne désir pas ficher la ligne de départ (1000
dans



mon example)

Merci









Avatar
Michel
Un grand merci ça fonctionne à merveille

Michel


Re
Dans ces conditions :
For i = Range("A65500").End(xlUp)(2).Row + 2 To 21 Step -12
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour Pascal,

En fait je me positionne automatiquement trois cellules en-dessous du
dernier enregistrement avec l'instruction suivante :

Range("a65500").Select
Selection.End(xlUp).Select
Selection.Offset(3, 0).Select

Merci


Bonjour
Qu'est ce qui détermine la cellule alléatoire ?
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour,

j'ai une macro sur une feuille de calcul qui me sélectionne un moment
donné

une cellule (cellule alléatoire), et à ce moment je lui donne
l'instruction

suivante :

For i = (ligne alléatoire) To 21 Step -12
Rows(i & ":" & i - 20).Select
Rows(i & ":" & i - 20).Delete Shift:=xlUp
i = i - 20
Next

Si je donne un N° de ligne comme par example : For i = 1000 To 21
Step -12,

ma boucle fonctionne, mais comme mon fichier est alimenté par de
nouveaux



éléments chaque jour, je ne désir pas ficher la ligne de départ (1000
dans



mon example)

Merci














Avatar
papou
Tant mieux ;-)
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Un grand merci ça fonctionne à merveille

Michel


Re
Dans ces conditions :
For i = Range("A65500").End(xlUp)(2).Row + 2 To 21 Step -12
Cordialement
Pascal

"Michel" a écrit dans le message de
news:
Bonjour Pascal,

En fait je me positionne automatiquement trois cellules en-dessous du
dernier enregistrement avec l'instruction suivante :

Range("a65500").Select
Selection.End(xlUp).Select
Selection.Offset(3, 0).Select

Merci


Bonjour
Qu'est ce qui détermine la cellule alléatoire ?
Cordialement
Pascal

"Michel" a écrit dans le message
de




news:
Bonjour,

j'ai une macro sur une feuille de calcul qui me sélectionne un
moment





donné
une cellule (cellule alléatoire), et à ce moment je lui donne
l'instruction

suivante :

For i = (ligne alléatoire) To 21 Step -12
Rows(i & ":" & i - 20).Select
Rows(i & ":" & i - 20).Delete Shift:=xlUp
i = i - 20
Next

Si je donne un N° de ligne comme par example : For i = 1000 To 21
Step -12,

ma boucle fonctionne, mais comme mon fichier est alimenté par de
nouveaux



éléments chaque jour, je ne désir pas ficher la ligne de départ
(1000





dans
mon example)

Merci