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
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
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.
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
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
Bonjour AV,
C'est quand même plus parlant que des chinoiseries de cet acabit : "=R[-1]C"
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
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
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
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
É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" a écrit dans le message de news:
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
É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" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
OHPR9oNtHHA.2444@TK2MSFTNGP06.phx.gbl...
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
É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" a écrit dans le message de news:
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
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"
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.
Bonjour AV Il n'y aurait il pas un scmilblick dans ""Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks)."" "AV" a écrit dans le message de news:
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
Bonjour AV
Il n'y aurait il pas un scmilblick dans ""Range("A1",
[A65536].End(3)).SpecialCells(xlCellTypeBlanks).""
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
OHPR9oNtHHA.2444@TK2MSFTNGP06.phx.gbl...
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
Bonjour AV Il n'y aurait il pas un scmilblick dans ""Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks)."" "AV" a écrit dans le message de news:
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
Il n'y aurait il pas un scmilblick dans ""Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).""
Heu... ?? Quel smilblick ?
AV
Il n'y aurait il pas un scmilblick dans ""Range("A1",
[A65536].End(3)).SpecialCells(xlCellTypeBlanks).""
Il n'y aurait il pas un scmilblick dans ""Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).""
Heu... ?? Quel smilblick ?
AV
Fredo P.
Ups excuse Av, c'est moi, je n'ai pas du correctement exécuter ton exemple issu du compte. "AV" a écrit dans le message de news: #
Il n'y aurait il pas un scmilblick dans ""Range("A1", [A65536].End(3)).SpecialCells(xlCellTypeBlanks).""
Heu... ?? Quel smilblick ?
AV
Ups excuse Av, c'est moi, je n'ai pas du correctement exécuter ton exemple
issu du compte.
"AV" <alainPFFFvallon@wanadoo.fr> a écrit dans le message de news:
#bs6a1ZtHHA.3364@TK2MSFTNGP02.phx.gbl...
Il n'y aurait il pas un scmilblick dans ""Range("A1",
[A65536].End(3)).SpecialCells(xlCellTypeBlanks).""