J'ai une base de données où j'ai des vides. Je voudrais remplir ces
vides par une macro qui étends la valeur des champs vides avec la
dernière valeur du dessus. Ex:
Base avant macro
Robert 15000
20000
15000
Martine 18000
Base apres macro
Robert 15000
Robert 20000
Robert 15000
Martine 18000
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
Daniel
Bonjour. Est-ce que "Robert" et "15000" sont dans des cellules différentes ? Est-ce que "20000" est dans la même colonne que "Robert" ? Cordialement. Daniel "simplet" a écrit dans le message de news:
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par une macro qui étends la valeur des champs vides avec la dernière valeur du dessus. Ex:
Base avant macro
Robert 15000 20000 15000 Martine 18000
Base apres macro
Robert 15000 Robert 20000 Robert 15000 Martine 18000
Bonjour.
Est-ce que "Robert" et "15000" sont dans des cellules différentes ?
Est-ce que "20000" est dans la même colonne que "Robert" ?
Cordialement.
Daniel
"simplet" <philippenotarianni@gmail.com> a écrit dans le message de news:
OM57BFGvGHA.1224@TK2MSFTNGP03.phx.gbl...
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides
par une macro qui étends la valeur des champs vides avec la dernière
valeur du dessus. Ex:
Base avant macro
Robert 15000
20000
15000
Martine 18000
Base apres macro
Robert 15000
Robert 20000
Robert 15000
Martine 18000
Bonjour. Est-ce que "Robert" et "15000" sont dans des cellules différentes ? Est-ce que "20000" est dans la même colonne que "Robert" ? Cordialement. Daniel "simplet" a écrit dans le message de news:
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par une macro qui étends la valeur des champs vides avec la dernière valeur du dessus. Ex:
Base avant macro
Robert 15000 20000 15000 Martine 18000
Base apres macro
Robert 15000 Robert 20000 Robert 15000 Martine 18000
MonOnc'
bonjour Simplet,
avec les prénoms en colonne A et les nombres en B :
Sub FillEmptyRanges() dim LastLine as long LastLine = Range("B65536").End(xlUp).Row For i = 2 To LastLine If Range("A" & i) = "" Then Range("A" & i) = Range("A" & i - 1) End If Next End Sub
cordialement
simplet a pensé très fort :
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par une macro qui étends la valeur des champs vides avec la dernière valeur du dessus. Ex:
Base avant macro
Robert 15000 20000 15000 Martine 18000
Base apres macro
Robert 15000 Robert 20000 Robert 15000 Martine 18000
bonjour Simplet,
avec les prénoms en colonne A et les nombres en B :
Sub FillEmptyRanges()
dim LastLine as long
LastLine = Range("B65536").End(xlUp).Row
For i = 2 To LastLine
If Range("A" & i) = "" Then
Range("A" & i) = Range("A" & i - 1)
End If
Next
End Sub
cordialement
simplet a pensé très fort :
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par
une macro qui étends la valeur des champs vides avec la dernière valeur du
dessus. Ex:
Base avant macro
Robert 15000
20000
15000
Martine 18000
Base apres macro
Robert 15000
Robert 20000
Robert 15000
Martine 18000
avec les prénoms en colonne A et les nombres en B :
Sub FillEmptyRanges() dim LastLine as long LastLine = Range("B65536").End(xlUp).Row For i = 2 To LastLine If Range("A" & i) = "" Then Range("A" & i) = Range("A" & i - 1) End If Next End Sub
cordialement
simplet a pensé très fort :
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par une macro qui étends la valeur des champs vides avec la dernière valeur du dessus. Ex:
Base avant macro
Robert 15000 20000 15000 Martine 18000
Base apres macro
Robert 15000 Robert 20000 Robert 15000 Martine 18000
Trirème
Bonjour simplet Voici la forme VBA de la sélection des cellules vides combinée avec la saisie dans plusieurs cellules en même temps. Ceci devrait être rapide à l'exécution :
Sub RecopieCelluleLignPrec() ' ATTENTION : à l'issue de l'exécution les formules initiales seront ' copiées en valeur. Donc ne pas utiliser si on veut les conserver.
' Sélectionner au préalable toute la plage de la BD ' et lancer la macro (éventuellement associée à un bouton) Set SelInit = Selection ' La sélection du départ SelInit.SpecialCells(xlCellTypeBlanks).Select ' Sélectionne les vides Selection = "=R[-1]C" ' Copie la valeur de la cellule du dessus SelInit.Copy ' Copie toute la sélection du départ (y compris formules)... SelInit.PasteSpecial Paste:=xlValues ' ... et colle en valeur, sur elle-même Application.CutCopyMode = False End Sub
Il me semble l'avoir vue en plus court, écrite par AV (commentaires à part)
Cordialement Trirème
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par une macro qui étends la valeur des champs vides avec la dernière valeur du dessus. Ex:
Base avant macro
Robert 15000 20000 15000 Martine 18000
Base apres macro
Robert 15000 Robert 20000 Robert 15000 Martine 18000
Bonjour simplet
Voici la forme VBA de la sélection des cellules vides combinée avec la
saisie dans plusieurs cellules en même temps.
Ceci devrait être rapide à l'exécution :
Sub RecopieCelluleLignPrec()
' ATTENTION : à l'issue de l'exécution les formules initiales seront
' copiées en valeur. Donc ne pas utiliser si on veut les conserver.
' Sélectionner au préalable toute la plage de la BD
' et lancer la macro (éventuellement associée à un bouton)
Set SelInit = Selection ' La sélection du départ
SelInit.SpecialCells(xlCellTypeBlanks).Select ' Sélectionne les vides
Selection = "=R[-1]C" ' Copie la valeur de la cellule du dessus
SelInit.Copy ' Copie toute la sélection du départ (y compris formules)...
SelInit.PasteSpecial Paste:=xlValues ' ... et colle en valeur, sur elle-même
Application.CutCopyMode = False
End Sub
Il me semble l'avoir vue en plus court, écrite par AV (commentaires à part)
Cordialement
Trirème
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces
vides par une macro qui étends la valeur des champs vides avec la
dernière valeur du dessus. Ex:
Base avant macro
Robert 15000
20000
15000
Martine 18000
Base apres macro
Robert 15000
Robert 20000
Robert 15000
Martine 18000
Bonjour simplet Voici la forme VBA de la sélection des cellules vides combinée avec la saisie dans plusieurs cellules en même temps. Ceci devrait être rapide à l'exécution :
Sub RecopieCelluleLignPrec() ' ATTENTION : à l'issue de l'exécution les formules initiales seront ' copiées en valeur. Donc ne pas utiliser si on veut les conserver.
' Sélectionner au préalable toute la plage de la BD ' et lancer la macro (éventuellement associée à un bouton) Set SelInit = Selection ' La sélection du départ SelInit.SpecialCells(xlCellTypeBlanks).Select ' Sélectionne les vides Selection = "=R[-1]C" ' Copie la valeur de la cellule du dessus SelInit.Copy ' Copie toute la sélection du départ (y compris formules)... SelInit.PasteSpecial Paste:=xlValues ' ... et colle en valeur, sur elle-même Application.CutCopyMode = False End Sub
Il me semble l'avoir vue en plus court, écrite par AV (commentaires à part)
Cordialement Trirème
Bonjour,
J'ai une base de données où j'ai des vides. Je voudrais remplir ces vides par une macro qui étends la valeur des champs vides avec la dernière valeur du dessus. Ex:
Base avant macro
Robert 15000 20000 15000 Martine 18000
Base apres macro
Robert 15000 Robert 20000 Robert 15000 Martine 18000