Comment remplir les cellules vides avec le même contenu que la cellule du haut?

eric.la

XLDnaute Nouveau
Bonjour ,

Pourriez vous m'aidez ? je cherche une fonction ou une macro pour pouvoir repérer toutes les celuules vides de mon fichier et remplir chaque cellule vide par le contenu de la cellule juste au dessus. Ci joint un extrait de mon fichier . Les colonnes à compléter sont A et B. Si vous avez une idée,cela me rendrait un grand service pck je tourne en rond là... :confused:

Ma version d'exel est EXEL 2003

Merci d'avance,:)
 

Pièces jointes

  • ex fichier.xls
    16 KB · Affichages: 405
  • ex fichier.xls
    16 KB · Affichages: 427
  • ex fichier.xls
    16 KB · Affichages: 427

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonjour

Un petit essai en lançant la macro
 

Pièces jointes

  • fichier.xls
    27 KB · Affichages: 645
  • fichier.xls
    27 KB · Affichages: 670
  • fichier.xls
    27 KB · Affichages: 680

Robert

XLDnaute Barbatruc
Repose en paix
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonjour Éric, bonjour le forum,

Essaie cette macro ci-dessous :
Code:
Sub Macro1()
Dim cel As Range 'déclare la variable cel
'boucle sur toutes les cellules des colonnes A et B
For Each cel In Range("A2:B" & Range("D65536").End(xlUp).Row)
    'si la cellule est vide, elle prend la valeur de la cellule du dessus
    If cel.Value = "" Then cel.Value = cel.Offset(-1, 0).Value
Next cel 'prochaine cellule des colonnes A et B
End Sub

Édition :

Bonjour mon cher Pascal on s'est croisé...
 
Dernière édition:

Catrice

XLDnaute Barbatruc
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonjour,

Un exemple ci-joint.

Attention il y a des dates au format texte et d'autre au format date (en B20 par exemple).
Ca n'a pas d'incidence sur la question posée.

Edit : bonjour à tous. y a du monde ;)
 

Pièces jointes

  • fichier(1).xls
    22.5 KB · Affichages: 388
  • fichier(1).xls
    22.5 KB · Affichages: 403
  • fichier(1).xls
    22.5 KB · Affichages: 363
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

bonjour eric.la

et bienvenue sur XLD

Vois si cela te convient

Encore a la bourre moi !!

Salut Catrice
Salut Staple
Salut Robert
Salut Pascal
 

Pièces jointes

  • ex fichier.zip
    10.3 KB · Affichages: 383
  • ex fichier.zip
    10.3 KB · Affichages: 398
  • ex fichier.zip
    10.3 KB · Affichages: 404

audio

XLDnaute Nouveau
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonjour Éric, bonjour le forum,

Essaie cette macro ci-dessous :
Code:
Sub Macro1()
Dim cel As Range 'déclare la variable cel
'boucle sur toutes les cellules des colonnes A et B
For Each cel In Range("A2:B" & Range("D65536").End(xlUp).Row)
    'si la cellule est vide, elle prend la valeur de la cellule du dessus
    If cel.Value = "" Then cel.Value = cel.Offset(-1, 0).Value
Next cel 'prochaine cellule des colonnes A et B
End Sub

Édition :

Bonjour mon cher Pascal on s'est croisé...

Bonjour, cette macro m'a servi, car je dois faire la meme chose. Cependant, je dois l'appliquer sur toutes les feuilles de mon classeur. J'ai trouvé ce topic https://www.excel-downloads.com/thr...o-sur-toutes-les-feuilles-dun-classeur.19164/ pour cela, mais je n'y arrive pas. Pourriez vous incorporer la ligne qu'il faut pour que l'exécution de la macro se fasse sur toutes les feuilles ?
Merci d'avance :)

Edit, ah oui, et aussi, où est-ce que je rentre le code ? Dans feuil1 (feuil1) ? Dans ThisWorkbook ?
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonsoir


Pour toutes les feuilles d'un classeur

Code:
Sub Macro1()
Dim cel As Range, i As Long 'déclare la variable cel
'boucle sur toutes les cellules des colonnes A et B
For i = 1 To Worksheets.Count
For Each cel In Worksheets(i).Range("A2:B" & Worksheets(i).Range("B65536").End(xlUp).Row)
    'si la cellule est vide, elle prend la valeur de la cellule du dessus
    If cel.Value = "" Then cel.Value = cel.Offset(-1, 0).Value
Next cel 'prochaine cellule des colonnes A et B
Next i
End Sub
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonsoir,

Sans boucle

Code:
Sub Complète()
[A1].CurrentRegion.Resize(, 2).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
[A1].CurrentRegion.Resize(, 2).Value = [A1].CurrentRegion.Resize(, 2).Value
End Sub

JB
 

Pièces jointes

  • Copie de ex fichier.xls
    33.5 KB · Affichages: 251

soenda

XLDnaute Accro
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonsoir le fil

... l'exellent code de JB avec un With
Code:
With [A1].CurrentRegion.Resize(, 2)
 .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
 .Value = .Value
End With

A plus
 

hoerwind

XLDnaute Barbatruc
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonjour à vous tous,

Pour ceux qui préfèrent les formules :
Sélectionner A2:B28
Touche clavier F5 - Cellules - cellules vides - OK
(raccourci clavier : F5 - Alt+c+d - Entrée)
Saisir dans la barre de formule : =A2
Valider par Ctrl+Entrée

=A2 parce que A3 est la cellule supérieure gauche des cellules sélectionnées.
 

soenda

XLDnaute Accro
Re : Comment remplir les cellules vides avec le même contenu que la cellule du haut?

Bonjour le fil

Une autre variante en VBA (sans le passage par formule)
Code:
    With [A1].CurrentRegion.Resize(, 2).SpecialCells(xlCellTypeBlanks)
        .Value = .Offset(-1).Value
    End With
A plus
 

Discussions similaires

Statistiques des forums

Discussions
312 332
Messages
2 087 361
Membres
103 530
dernier inscrit
Chess01