Remplir une cellule vide avec la valeur qui la précéde?

tcomteck

XLDnaute Nouveau
Bonjour tous le monde,
J'ai un fichier excel qui contient 32000 lignes, avec 3 colonnes disant X, Y et Z je veux faire simplement remplir les cases vides de chaque colonnes, pour cela il me faut copier la valeur de la cellule précédente dans prochaine cases (que ce soit une ou Deux ou ... etc )
par exemple :
X________Y_____Z
49.631 -12.736 0.630
49.640 -12.420 -0.380
-11.931 -2.344 <-- cette case Z3 prendra -0.380
-11.931 -2.344 <--cette case Z4aussi prendra -0.380
49.629 -11.353 -4.217 (Pour la colonne Y aussi)


et Ainsi de suite, et comme vous voyer dans le fichier; pour 32000 lignes on va pas s'amuser à les remplir manuellement :eek:

Alors un petit macro serait très utile pour cela je crois:D

et comme je suis débutant, j'ai besoin de votre aide s'il vous plaît,

voici le fichier:
RapidShare: Easy Filehosting


Merci d'avance;
 

kjin

XLDnaute Barbatruc
Re : Remplir une cellule vide avec la valeur qui la précéde?

bonjour,
Il n'était pas utile de joindre tout le fichier, la feuille en question était suffisante !
Donc pas téléchargé, donc pas testé mais avec ce que je comprends
Code:
Sub recopie()
For Each cel In Range("X1:X" & Range("X65000").End(xlUp).Row) 'adapter
    If cel.Offset(0, 1) = "" Then cel.Offset(0, 1) = cel.Offset(-1, 1)
    If cel.Offset(0, 2) = "" Then cel.Offset(0, 2) = cel.Offset(-1, 2)
Next
End Sub
A condition que la première ligne soit complète
A+
kjin
 

job75

XLDnaute Barbatruc
Re : Remplir une cellule vide avec la valeur qui la précéde?

Bonjour tcomteck,

Essayez :

Code:
Sub Remplir()
Dim cel As Range
On Error Resume Next 'si 1ère ligne...
For Each cel In UsedRange
If cel = "" Then cel = cel.Offset(-1)
Next
End Sub

Edit : Salut kjin :) J'ai peut-être mal compris le problème...

A+
 
Dernière édition:

tcomteck

XLDnaute Nouveau
Re : Remplir une cellule vide avec la valeur qui la précéde?

Bonjour tcomteck,

Essayez :

Code:
Sub Remplir()
Dim cel As Range
On Error Resume Next 'si 1ère ligne...
For Each cel In UsedRange
If cel = "" Then cel = cel.Offset(-1)
Next
End Sub

Edit : Salut kjin :) J'ai peut-être mal compris le problème...

A+

Merci à tous pour ce précieux aide que vous m'avez fourni :eek::)

Merci job75 c'est ça ce que je cherchais :D

Encore Merci
 

tototiti2008

XLDnaute Barbatruc
Re : Remplir une cellule vide avec la valeur qui la précéde?

Bonjour à tous,

Pour donner une méthode sans macro :

on sélectionne toute la liste (Ctrl + *)
Menu Edition - Atteindre
Bouton Cellules...
Cellules vides
OK
Menu Edition - Remplacer
Rechercher :
laisser vide
Remplacer :
=decaler($A$1;ligne()-2;colonne()-1)
Bouton Remplacer tout

Edit : En fait, on peut même se passer du Edition - Atteindre...
 
Dernière édition:

Discussions similaires

Réponses
7
Affichages
608