Macro Copie de Valeur seulement

Le
Billy
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 4
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
garnote
Le #4654731
Salut Billy,

Est-ce que ceci te convient ?
Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
End Sub

Serge

"Billy"
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy


cousinhub
Le #4654711
Bonjour, rajoute en début ceci :
.Value = .Value

With [a13:S13]
.Value = .Value

.Copy


Bonne journée

Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!



garnote
Le #4654671
Et si tu veux faire disparaître le contenu de la plage [a13:s13] :

Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
[a13:s13].ClearContents
End Sub

Serge



"garnote"
Salut Billy,

Est-ce que ceci te convient ?
Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
End Sub

Serge

"Billy"
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy






jps
Le #4654661
peut-être en ajoutant ceci, billy

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With
Range("A14:S14") = Range("A14:S14")
End Sub

jps

"Billy"
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou
copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy


Billy
Le #4654591
Bonjour,

J'ai besoin de garder la procédure " .Insert Shift:=xlDown" car je fais mes
entrées de données toujours sur la ligne 13. Et l'idée est que les données
descendent une ligne plus bas à chaque nouvelle entrée. C'est pourquoi que
j'aimerais adapter cette cette macro pour que ce soit uniquement les valeurs
et non les formules qui se copient sur la ligne plus bas.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

J'y arrive pas du tout. J'essaie d'ajouter à la ligne .Copy :
.Copy.Value

...mais ca fonctionne pas.

Un gros merci encore! Vous êtes tellement gentils de m'aider!


--
Billy



Et si tu veux faire disparaître le contenu de la plage [a13:s13] :

Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
[a13:s13].ClearContents
End Sub

Serge



"garnote"
Salut Billy,

Est-ce que ceci te convient ?
Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
End Sub

Serge

"Billy"
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy











Billy
Le #4654581
Bonjour,

Ca fonctionne pas. Ce qui se passe de facon plus détaillée, c'est que de A13
à C13, j'ai des formules qui me permettent de rapporter des données de
cellules cibles. De D13 à S13, j'ai des données que j'entre manuellement.

Sur la ligne 13, je fais toujours l'entrée de nouvelles données à l'aide de
la macro établit.

Donc, mon souci est de pouvoir garder historiquement mes entrées de données
"en valeur" seulement" en les décalant vers le bas, et pour les cellules A13
à C13, toujours garder leur formules.

Avant, j'ai 2 macros. La première :

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

et la seconde :

Private Sub Worksheet_Change(ByVal Target As Range)

[A13:c13] = [A11:c11].Value

End Sub

Mais quand je protège mon fichier, une boîte de dialogue s'affiche Erreur
d'exécution 1004' Espace Pile insuffisant.

Donc voilà pourquoi je cherche une facon de faire pour éliminer cette 2e
macro qui bousille mon fichier. Si je pourrais l'intégrer à ma première macro
ca éliminerait peut-être le problème.

Merci :)
--
Billy



peut-être en ajoutant ceci, billy

Sub ausuivant()

With [a13:S13]
..Copy
..Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With
Range("A14:S14") = Range("A14:S14")
End Sub

jps

"Billy"
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou
copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy






garnote
Le #4654571
Peut-être ainsi :

Sub Copie()
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteValues
Rows("13:13").ClearContents 'Si tu veux
Application.CutCopyMode = False
End Sub

Serge



"Billy"
Bonjour,

J'ai besoin de garder la procédure " .Insert Shift:=xlDown" car je fais mes
entrées de données toujours sur la ligne 13. Et l'idée est que les données
descendent une ligne plus bas à chaque nouvelle entrée. C'est pourquoi que
j'aimerais adapter cette cette macro pour que ce soit uniquement les valeurs
et non les formules qui se copient sur la ligne plus bas.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

J'y arrive pas du tout. J'essaie d'ajouter à la ligne .Copy :
.Copy.Value

...mais ca fonctionne pas.

Un gros merci encore! Vous êtes tellement gentils de m'aider!


--
Billy



Et si tu veux faire disparaître le contenu de la plage [a13:s13] :

Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
[a13:s13].ClearContents
End Sub

Serge



"garnote"
Salut Billy,

Est-ce que ceci te convient ?
Sub Au_Suivant()
[a14:s14] = [a13:s13].Value
End Sub

Serge

"Billy"
Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!

--
Billy













cousinhub
Le #4654561
Bonjour, rajoute à la fin de ton code :
[a14:S14].Value = [a14:S14].Value
Bonne journée

Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!



jps
Le #4654531
oops, cousinhub, c'est ce que j'avais susurré à l'oreille de Billy mais
j'aurais du tester avant : la ligne que nous suggérions fait que les valeurs
comprises dans A14:S14 disparaissent (chez moi, tout du moins)
si Billy sait où sont ses formules (et elle doit le savoir) il faut qu'elle
décline une à une les cellules avec formules, par ex :

Range("C14, G14,I14,L14,O14,S14") = Range("C14, G14,I14,L14,O14,S14")

par contre je suis preneur d'une explication pour ce qui se passe quand on
donne toute la plage...!!!
jps

"cousinhub" O%
Bonjour, rajoute à la fin de ton code :
[a14:S14].Value = [a14:S14].Value
Bonne journée

Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou
copier devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois,
j'essaie de l'adapter pour copier uniquement les valeurs et non les
formules sur cette ligne plus bas. Étant de niveau débutante, j'éprouve
de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!





Billy
Le #4654511
Bonjour,

Ca fonctionne pas. Il me met en erreur la ligne
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents

Peut-être que je ne place pas la procédure au bon endroit. Où devrais-je
placer précisément : [a14:S14].Value = [a14:S14].Value

Je comprends pas non plus cette procédure ... Est-ce que ce ne devrais pas
être [a14:s14].Value = [a13:S13].value ?

Merci de ta belle patience avec moi qui est si débutante! :)

--
Billy



Bonjour, rajoute à la fin de ton code :
[a14:S14].Value = [a14:S14].Value
Bonne journée

Bonjour,

Dans une feuille, j'ai la macro suivante qui me permet de décaler (ou copier
devrais-je dire) ma ligne 13 une ligne vers le bas.Toutefois, j'essaie de
l'adapter pour copier uniquement les valeurs et non les formules sur cette
ligne plus bas. Étant de niveau débutante, j'éprouve de la difficulté.

Sub ausuivant()

With [a13:S13]
.Copy
.Insert Shift:=xlDown
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With

End Sub

Merci beaucoup de votre aide!






Publicité
Poster une réponse
Anonyme