Etendre valeurs en haut et en bas

Bonjour à vous !

Voici une partie de mon code. C'est pourtant tout simple...Je souhaite à partir d'une variable déterminant la ligne, sélectionner les 2 cellules, les étendre en haut de 20 lignes et en bas de 20 lignes également.

Je suis si proche du but !

En vous remerciant :)

Sub Test()
Dim i%,m%
i = 30 'Variable sélectionnant le ligne a étendre en haut et en bas
m=20 'Nombre de ligne à étendre

Range(Cells(i, 1), Cells(i, 2)).Select
Selection.AutoFill Destination:=Worksheets("Sheet1").Range(Cells(i - m, 1), Cells(i + m, 2)), Type:=xlFillDefault

End Sub

Bonjour,

Un exemple fonctionnel qui étend les données en haut et en bas en mettant 1 et 2 en A30 et A31 :

Sub ETENDRE()
Dim L%
L = 20
Range("A30:A31").AutoFill Range("A30:A" & 31 + L - 2), xlFillSeries
Range("A30:A31").AutoFill Range("A31:A" & 30 - L - 1), xlFillSeries
End Sub

Par contre je me rend compte que dans votre code vous avez 2 colonnes à incrémenter ? Pourriez-vous joindre un fichier avec le résultat attendu car je ne suis pas certain qu'Excel arrive à incrémenter 2 colonne simultanément.

Cdlt,

Bonjour Ergotamine,

Merci pour votre réponse !

Je suis en train de réaliser un gros projet dont vous m'avez aidé au début, je le fractionne en petit morceau pour mieux comprendre.

Dans cet exemple

i=10

et m=5

Voici ce que j'aimerai obtenir comme résultat svp

Cordialement,

etendre 5 lignes

Bonjour,

Toujours plus simple avec un exemple en effet :

Sub ETENDRE()
Dim i%, m%
i = 10
m = 5
Range("A" & i & ":B" & i + m).FillDown
Range("A" & i & ":B" & i - m).FillUp
End Sub

Vous pouvez également passer par des cells comme vous l'aviez fait :

Sub ETENDRE()
Dim i%, m%
i = 10
m = 5
Range(Cells(i, 1), Cells(i + m, 2)).FillDown
Range(Cells(i, 1), Cells(i - m, 2)).FillUp
End Sub

Cdlt,

FillDown et FillUp étaient donc les bonnes solutions, merci beaucoup pour votre réponse !

Marqué comme Verifié,

Cordialement,

Rechercher des sujets similaires à "etendre valeurs haut bas"