macro recopie cellule précédente

Le
dom
Bonjour,

Comment par macro remplir les cellules vides par les cellules stockées dans
la cellule précédente ?

Merci de vos réponses

Dom

ex :
A
1 toto
2 titi
3 (à la place de cellule vide je voudrais avoir
titi(contenu de A2)
4 toto
5 tata
6 (à la place de cellule vide, je voudrais avoir
tata(contenu de A5)
7 tutu
8 (à la place de cellule vide, je voudrais avoir tutu
(contenu de A7

etc.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
AV
Le #4910361
Comment par macro remplir les cellules vides par les cellules stockées dans
la cellule précédente ?


Tu peux exécuter cette macro :

Sub Complète_Lignes()
Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).FormulaR1C1 =
"=R[-1]C"
[plg].Value = [plg].Value
End Sub

AV

isabelle
Le #4910341
bonjour Dom,

Sub Remplir_blanc()
Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8)
dp = plg.Item(1)
For Each c In plg
If c = 0 Then
Range(c.Address) = dp
Else
dp = c
End If
Next
End Sub

isabelle

Bonjour,

Comment par macro remplir les cellules vides par les cellules stockées dans
la cellule précédente ?

Merci de vos réponses

Dom

ex :
A
1 toto
2 titi
3 (à la place de cellule vide je voudrais avoir
titi(contenu de A2)
4 toto
5 tata
6 (à la place de cellule vide, je voudrais avoir
tata(contenu de A5)
7 tutu
8 (à la place de cellule vide, je voudrais avoir tutu
(contenu de A7

etc.


MichDenis
Le #4910311
Bonjour AV,

C'est quand même plus parlant que des chinoiseries de cet
acabit : "=R[-1]C"

Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).Formula = _
"=" & Range("A2").Offset(-1).Address(0, 0)

;-)




"AV"
Comment par macro remplir les cellules vides par les cellules stockées dans
la cellule précédente ?


Tu peux exécuter cette macro :

Sub Complète_Lignes()
Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).FormulaR1C1 "=R[-1]C"
[plg].Value = [plg].Value
End Sub

AV

AV
Le #4910241
C'est quand même plus parlant que des chinoiseries de cet
acabit : "=R[-1]C">
Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).Formula = _
"=" & Range("A2").Offset(-1).Address(0, 0)


Heu…..heu...
Plus parlant peut-être mais malgré mon aversion préofonde pour le système de
rréférence L1C1, il m'apparait absolument nécessaire, dans ce cas, d'écrire la
formule sous forme de références relatives !
Voir l'exemple joint
http://cjoint.com/?gwqGoLtSxp

Code plus "fini" :

Sub Complète_AV()
Set plg = Range("A1", [A65536].End(3))
plg.SpecialCells(xlCellTypeBlanks) = "=R[-1]C"
[plg].Value = [plg].Value
End Sub

AV

MichDenis
Le #4910221
Évidemment, il faut adapter selon la disposition des données de la feuille...!

Selon la donne que tu as émise dans ton fichier exemple,
ceci fonctionne très bien, je crois ...

'-----------------------------
Sub Top_Niveau()
With Range("A1", [A65536].End(3))
With .SpecialCells(xlCellTypeBlanks)
.Formula = "=" & .Item(1).Offset(-1, 0).Address(0, 0)
End With
.Value = .Value
End With
End Sub
'-----------------------------

Et il faudrait ajouter en début de procédure :
On Error Resume Next au cas où il n'y a pas de cellules
correspondantes dans la méthode SpecialCells.



"AV"
C'est quand même plus parlant que des chinoiseries de cet
acabit : "=R[-1]C">
Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).Formula = _
"=" & Range("A2").Offset(-1).Address(0, 0)


Heu...heu...
Plus parlant peut-être mais malgré mon aversion préofonde pour le système de
rréférence L1C1, il m'apparait absolument nécessaire, dans ce cas, d'écrire la
formule sous forme de références relatives !
Voir l'exemple joint
http://cjoint.com/?gwqGoLtSxp

Code plus "fini" :

Sub Complète_AV()
Set plg = Range("A1", [A65536].End(3))
plg.SpecialCells(xlCellTypeBlanks) = "=R[-1]C"
[plg].Value = [plg].Value
End Sub

AV

dom
Le #4910151
Merci à vous tous (Isabelle,MichDenis et AV)
C'est sympa
. Cela fonctionne parfaitement bien


Bonjour AV,

C'est quand même plus parlant que des chinoiseries de cet
acabit : "=R[-1]C"

Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).Formula = _
"=" & Range("A2").Offset(-1).Address(0, 0)

;-)




"AV"
Comment par macro remplir les cellules vides par les cellules stockées dans
la cellule précédente ?


Tu peux exécuter cette macro :

Sub Complète_Lignes()
Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).FormulaR1C1 > "=R[-1]C"
[plg].Value = [plg].Value
End Sub

AV







Fredo P.
Le #4909951
Bonjour AV
Il n'y aurait il pas un scmilblick dans ""Range("A1",
[A65536].End(3)).SpecialCells(xlCellTypeBlanks).""
"AV"
C'est quand même plus parlant que des chinoiseries de cet
acabit : "=R[-1]C">
Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).Formula = _
"=" & Range("A2").Offset(-1).Address(0, 0)


Heu...heu...
Plus parlant peut-être mais malgré mon aversion préofonde pour le système
de

rréférence L1C1, il m'apparait absolument nécessaire, dans ce cas,
d'écrire la

formule sous forme de références relatives !
Voir l'exemple joint
http://cjoint.com/?gwqGoLtSxp

Code plus "fini" :

Sub Complète_AV()
Set plg = Range("A1", [A65536].End(3))
plg.SpecialCells(xlCellTypeBlanks) = "=R[-1]C"
[plg].Value = [plg].Value
End Sub

AV





AV
Le #4909831
Il n'y aurait il pas un scmilblick dans ""Range("A1",
[A65536].End(3)).SpecialCells(xlCellTypeBlanks).""


Heu... ??
Quel smilblick ?

AV

Fredo P.
Le #4909711
Ups excuse Av, c'est moi, je n'ai pas du correctement exécuter ton exemple
issu du compte.
"AV" #
Il n'y aurait il pas un scmilblick dans ""Range("A1",
[A65536].End(3)).SpecialCells(xlCellTypeBlanks).""


Heu... ??
Quel smilblick ?

AV





Publicité
Poster une réponse
Anonyme