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

Incrémentation

6 réponses
Avatar
pierre
Bonjour

Je cherche à remplir dans une colonne les cellules vides par la valeur
precedente + 1
Exemple B5=9 B6 vide devient 10 en B15 la valeur est 7 B16 etant vide
devient 8... jusqu'a B2000
J'ai utilisé l'enregistreur de macro --- Selection.AutoFill ,
Type:=xlFillDefault mais echec total
merci a vous pour votre aide

Pierre

6 réponses

Avatar
isabelle
bonjour Pierre,

Sub Macro1()
Dim c As Range
For Each c In Range("B5:B2000")
If c = Empty Then Range(c.Address) = c.Offset(-1, 0) + 1
Next
End Sub

isabelle


Le 2011-03-14 19:19, pierre a écrit :
Bonjour

Je cherche à remplir dans une colonne les cellules vides par la valeur
precedente + 1
Exemple B5=9 B6 vide devient 10 en B15 la valeur est 7 B16 etant vide
devient 8... jusqu'a B2000
J'ai utilisé l'enregistreur de macro --- Selection.AutoFill ,
Type:=xlFillDefault mais echec total
merci a vous pour votre aide

Pierre



Avatar
pierre
Bonsoir Isabelle,

Super classe la macro.

merci

P.

"isabelle" a écrit dans le message de news:
ilmjj9$nho$
bonjour Pierre,

Sub Macro1()
Dim c As Range
For Each c In Range("B5:B2000")
If c = Empty Then Range(c.Address) = c.Offset(-1, 0) + 1
Next
End Sub

isabelle


Le 2011-03-14 19:19, pierre a écrit :
Bonjour

Je cherche à remplir dans une colonne les cellules vides par la valeur
precedente + 1
Exemple B5=9 B6 vide devient 10 en B15 la valeur est 7 B16 etant
vide
devient 8... jusqu'a B2000
J'ai utilisé l'enregistreur de macro --- Selection.AutoFill ,
Type:=xlFillDefault mais echec total
merci a vous pour votre aide

Pierre



Avatar
pierre
Bonsoir Isabelle

Est-il possible de modifier For Each c In Range("B5:B2000")
pour partir toujours de B5 mais jusqu'a la derniere valeur utilisée
du genre B999  ( derniere valeur ) donc B1000 et stop car absence
de valeur après
J'ai en colonne A1000 une valeur fixe ( et la derniere) si cela peut aider
pour stopper la macro

merci
Pierre


"pierre" a écrit dans le message de news:
ilr8mc$fsh$
Bonsoir Isabelle,

Super classe la macro.

merci

P.

"isabelle" a écrit dans le message de news:
ilmjj9$nho$
bonjour Pierre,

Sub Macro1()
Dim c As Range
For Each c In Range("B5:B2000")
If c = Empty Then Range(c.Address) = c.Offset(-1, 0) + 1
Next
End Sub

isabelle


Le 2011-03-14 19:19, pierre a écrit :
Bonjour

Je cherche à remplir dans une colonne les cellules vides par la valeur
precedente + 1
Exemple B5=9 B6 vide devient 10 en B15 la valeur est 7 B16 etant
vide
devient 8... jusqu'a B2000
J'ai utilisé l'enregistreur de macro --- Selection.AutoFill ,
Type:=xlFillDefault mais echec total
merci a vous pour votre aide

Pierre









Avatar
isabelle
bonjour Pierre,

oui, il faut remplacer la ligne

For Each c In Range("B5:B2000")

par

For Each c In Range("B5:B"& Range("B65536").End(xlUp).Row)


isabelle
------------------------------------------------------------------

Le 2011-03-21 20:01, pierre a écrit :
Bonsoir Isabelle

Est-il possible de modifier For Each c In Range("B5:B2000")
pour partir toujours de B5 mais jusqu'a la derniere valeur utilisée
du genre B999  ( derniere valeur ) donc B1000 et stop car absence
de valeur après
J'ai en colonne A1000 une valeur fixe ( et la derniere) si cela peut aider
pour stopper la macro

merci
Pierre


"pierre" a écrit dans le message de news:
ilr8mc$fsh$

Bonsoir Isabelle,

Super classe la macro.

merci

P.

"isabelle" a écrit dans le message de news:
ilmjj9$nho$

bonjour Pierre,

Sub Macro1()
Dim c As Range
For Each c In Range("B5:B2000")
If c = Empty Then Range(c.Address) = c.Offset(-1, 0) + 1
Next
End Sub

isabelle


Le 2011-03-14 19:19, pierre a écrit :

Bonjour

Je cherche à remplir dans une colonne les cellules vides par la valeur
precedente + 1
Exemple B5=9 B6 vide devient 10 en B15 la valeur est 7 B16 etant
vide
devient 8... jusqu'a B2000
J'ai utilisé l'enregistreur de macro --- Selection.AutoFill ,
Type:=xlFillDefault mais echec total
merci a vous pour votre aide

Pierre














Avatar
pierre
encore merci

Pierre

"isabelle" a écrit dans le message de news:
im8qar$nbi$
bonjour Pierre,

oui, il faut remplacer la ligne

For Each c In Range("B5:B2000")

par

For Each c In Range("B5:B"& Range("B65536").End(xlUp).Row)


isabelle
------------------------------------------------------------------

Le 2011-03-21 20:01, pierre a écrit :
Bonsoir Isabelle

Est-il possible de modifier For Each c In Range("B5:B2000")
pour partir toujours de B5 mais jusqu'a la derniere valeur utilisée
du genre B999  ( derniere valeur ) donc B1000 et stop car
absence
de valeur après
J'ai en colonne A1000 une valeur fixe ( et la derniere) si cela peut
aider
pour stopper la macro

merci
Pierre


"pierre" a écrit dans le message de news:
ilr8mc$fsh$

Bonsoir Isabelle,

Super classe la macro.

merci

P.

"isabelle" a écrit dans le message de news:
ilmjj9$nho$

bonjour Pierre,

Sub Macro1()
Dim c As Range
For Each c In Range("B5:B2000")
If c = Empty Then Range(c.Address) = c.Offset(-1, 0) + 1
Next
End Sub

isabelle


Le 2011-03-14 19:19, pierre a écrit :

Bonjour

Je cherche à remplir dans une colonne les cellules vides par la valeur
precedente + 1
Exemple B5=9 B6 vide devient 10 en B15 la valeur est 7 B16 etant
vide
devient 8... jusqu'a B2000
J'ai utilisé l'enregistreur de macro --- Selection.AutoFill ,
Type:=xlFillDefault mais echec total
merci a vous pour votre aide

Pierre














Avatar
bcar
Le 22/03/2011 01:26, isabelle a écrit :
bonjour Pierre,

oui, il faut remplacer la ligne

For Each c In Range("B5:B2000")

par

For Each c In Range("B5:B"& Range("B65536").End(xlUp).Row)


isabelle
------------------------------------------------------------------



Et même encore pire (pour que cela fonctionne quelque soit le nombre de
lignes de la feuille)

For Each c In Range("B5:B" & cells(Application.Rows.Count,2).End(xlUp).Row)