Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA: dans une colonne copier une valeur dans les cellules en dessous jusqu'à la valeur suivante

3 réponses
Avatar
Genyal_F
Bonjour à tous,

il s'agit en fait d'une reqête simple mais dur à expliquer:

J'ai une valeur en A4, je voudrais "descendre" ( c'est-à-dire copier) cette
valeur jusqu'à la valeur suivante qui se trouve en A6( mais il se peut que
la valeur soit en A7 ou A8) puis copier cette valeur jusqu'à la valeur
suivante qui se trouve en A11 et ainsi jusquà une autre valeur.

en gros cela doit donner çà:
Avant Après
P1 P1
P1
P3 P3
P3
P3
P3
P3
P4 P4
P4
P4
P4
P5 P5
P5
P5
P23 P23


Merci d'avance de votre aide

Fred

3 réponses

Avatar
Philippe.R
Bonsoir,
En nommant la plage concernée plage, le code suivant devrait convenir :

Sub copibas_sivid()
Dim PtiRec As Range
For Each PtiRec In Range("plage")
If PtiRec = "" Then PtiRec.Value = PtiRec.Offset(-1, 0).Value
Next PtiRec
End Sub

--
Amicales Salutations
XL 97 / 2000 / 2002
Retirer A_S_ pour répondre en privé.
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Genyal_F" a écrit dans le message de news:
4187d611$0$32227$
Bonjour à tous,

il s'agit en fait d'une reqête simple mais dur à expliquer:

J'ai une valeur en A4, je voudrais "descendre" ( c'est-à-dire copier) cette
valeur jusqu'à la valeur suivante qui se trouve en A6( mais il se peut que
la valeur soit en A7 ou A8) puis copier cette valeur jusqu'à la valeur
suivante qui se trouve en A11 et ainsi jusquà une autre valeur.

en gros cela doit donner çà:
Avant Après
P1 P1
P1
P3 P3
P3
P3
P3
P3
P4 P4
P4
P4
P4
P5 P5
P5
P5
P23 P23


Merci d'avance de votre aide

Fred




Avatar
Genyal_F
Merci Philippe, ça marche super bien, mainteannt je vais essayer de
comprendre la macro

Fred

"Philippe.R" a écrit dans le message de
news:
Bonsoir,
En nommant la plage concernée plage, le code suivant devrait convenir :

Sub copibas_sivid()
Dim PtiRec As Range
For Each PtiRec In Range("plage")
If PtiRec = "" Then PtiRec.Value = PtiRec.Offset(-1, 0).Value
Next PtiRec
End Sub

--
Amicales Salutations
XL 97 / 2000 / 2002
Retirer A_S_ pour répondre en privé.
Préférez suivre facilement sur le forum :
news://msnews.microsoft.com/microsoft.public.fr.excel
(Voulez-vous vous abonner ? -> Oui)

"Genyal_F" a écrit dans le message de news:
4187d611$0$32227$
Bonjour à tous,

il s'agit en fait d'une reqête simple mais dur à expliquer:

J'ai une valeur en A4, je voudrais "descendre" ( c'est-à-dire copier)
cette


valeur jusqu'à la valeur suivante qui se trouve en A6( mais il se peut
que


la valeur soit en A7 ou A8) puis copier cette valeur jusqu'à la valeur
suivante qui se trouve en A11 et ainsi jusquà une autre valeur.

en gros cela doit donner çà:
Avant Après
P1 P1
P1
P3 P3
P3
P3
P3
P3
P4 P4
P4
P4
P4
P5 P5
P5
P5
P23 P23


Merci d'avance de votre aide

Fred








Avatar
ludovicsgw
Le mardi 02 Novembre 2004 à 19:46 par Genyal_F :
Bonjour à tous,

il s'agit en fait d'une reqête simple mais dur à expliquer:

J'ai une valeur en A4, je voudrais "descendre" ( c'est-à-dire
copier) cette
valeur jusqu'à la valeur suivante qui se trouve en A6( mais il se peut
que
la valeur soit en A7 ou A8) puis copier cette valeur jusqu'à la valeur
suivante qui se trouve en A11 et ainsi jusquà une autre valeur.

en gros cela doit donner çà:
Avant Après
P1 P1
P1
P3 P3
P3
P3
P3
P3
P4 P4
P4
P4
P4
P5 P5
P5
P5
P23 P23


Merci d'avance de votre aide

Fred


Quasiment 8 ans après, cette formule marche toujours très bien ! Merci à son auteur

Ludovic