Voilà, dans la colonne B, j'ai des chiffres, 1 2 3, etc... mais qui sont
séparés par plusieurs lignes ce qui donne par exemple la situation suivante :
en B1 le chiffre 1, et B7 le chiffre 2, en B10 le chiffre 42, etc... et je
voudrais pouvoir remplir les cellules B2 à B6 avec le chiffre 1, les cellules
B8 à B9 avec le chiffre 2, etc..., soit chaque fois remplir l'espace vide
avec le chiffre du haut. Est-ce possible avec une macro ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
papou
Bonjour Exemple à adapter : Sub RemplirLesVides() With Worksheets(1).Range("B1:B50") Set c = .Find("", LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do c.Value = c.Offset(-1, 0).Value Set c = .FindNext(c) On Error Resume Next Loop While Not c Is Nothing And c.Address <> firstAddress End If End With End Sub
Cordialement Pascal
"Michel" a écrit dans le message de news:
Bonjour,
Voilà, dans la colonne B, j'ai des chiffres, 1 2 3, etc... mais qui sont séparés par plusieurs lignes ce qui donne par exemple la situation suivante : en B1 le chiffre 1, et B7 le chiffre 2, en B10 le chiffre 42, etc... et je voudrais pouvoir remplir les cellules B2 à B6 avec le chiffre 1, les cellules B8 à B9 avec le chiffre 2, etc..., soit chaque fois remplir l'espace vide avec le chiffre du haut. Est-ce possible avec une macro ?
Merci de votre aide
Michel
Bonjour
Exemple à adapter :
Sub RemplirLesVides()
With Worksheets(1).Range("B1:B50")
Set c = .Find("", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.Value = c.Offset(-1, 0).Value
Set c = .FindNext(c)
On Error Resume Next
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End Sub
Cordialement
Pascal
"Michel" <Michel@discussions.microsoft.com> a écrit dans le message de news:
6B459208-A078-44AF-8E2B-D7F341FF9972@microsoft.com...
Bonjour,
Voilà, dans la colonne B, j'ai des chiffres, 1 2 3, etc... mais qui sont
séparés par plusieurs lignes ce qui donne par exemple la situation
suivante :
en B1 le chiffre 1, et B7 le chiffre 2, en B10 le chiffre 42, etc... et je
voudrais pouvoir remplir les cellules B2 à B6 avec le chiffre 1, les
cellules
B8 à B9 avec le chiffre 2, etc..., soit chaque fois remplir l'espace vide
avec le chiffre du haut. Est-ce possible avec une macro ?
Bonjour Exemple à adapter : Sub RemplirLesVides() With Worksheets(1).Range("B1:B50") Set c = .Find("", LookIn:=xlValues) If Not c Is Nothing Then firstAddress = c.Address Do c.Value = c.Offset(-1, 0).Value Set c = .FindNext(c) On Error Resume Next Loop While Not c Is Nothing And c.Address <> firstAddress End If End With End Sub
Cordialement Pascal
"Michel" a écrit dans le message de news:
Bonjour,
Voilà, dans la colonne B, j'ai des chiffres, 1 2 3, etc... mais qui sont séparés par plusieurs lignes ce qui donne par exemple la situation suivante : en B1 le chiffre 1, et B7 le chiffre 2, en B10 le chiffre 42, etc... et je voudrais pouvoir remplir les cellules B2 à B6 avec le chiffre 1, les cellules B8 à B9 avec le chiffre 2, etc..., soit chaque fois remplir l'espace vide avec le chiffre du haut. Est-ce possible avec une macro ?
Merci de votre aide
Michel
Denis
Bonjour, vu sur un exemple de je ne sais plus qui Sub completer() ' cherche la dernière ligne de B x = [B65536].End(xlUp).Row ' de B1 à A dernière ligne, si la cellule est vide For Each c In Range("B1: B" & x).SpecialCells (xlCellTypeBlanks) ' la remplir avec la précédente valeur connue c.Value = Range(c.Address).End(xlUp).Value Next End Sub
Denis
-----Message d'origine----- Bonjour,
Voilà , dans la colonne B, j'ai des chiffres, 1 2 3, etc... mais qui sont
en B1 le chiffre 1, et B7 le chiffre 2, en B10 le chiffre 42, etc... et je
voudrais pouvoir remplir les cellules B2 Ã B6 avec le chiffre 1, les cellules
B8 Ã B9 avec le chiffre 2, etc..., soit chaque fois remplir l'espace vide
avec le chiffre du haut. Est-ce possible avec une macro ?
Merci de votre aide
Michel .
Bonjour,
vu sur un exemple de je ne sais plus qui
Sub completer()
' cherche la dernière ligne de B
x = [B65536].End(xlUp).Row
' de B1 à A dernière ligne, si la cellule est vide
For Each c In Range("B1: B" & x).SpecialCells
(xlCellTypeBlanks)
' la remplir avec la précédente valeur connue
c.Value = Range(c.Address).End(xlUp).Value
Next
End Sub
Denis
-----Message d'origine-----
Bonjour,
Voilà , dans la colonne B, j'ai des chiffres, 1 2 3,
etc... mais qui sont
Bonjour, vu sur un exemple de je ne sais plus qui Sub completer() ' cherche la dernière ligne de B x = [B65536].End(xlUp).Row ' de B1 à A dernière ligne, si la cellule est vide For Each c In Range("B1: B" & x).SpecialCells (xlCellTypeBlanks) ' la remplir avec la précédente valeur connue c.Value = Range(c.Address).End(xlUp).Value Next End Sub
Denis
-----Message d'origine----- Bonjour,
Voilà , dans la colonne B, j'ai des chiffres, 1 2 3, etc... mais qui sont