Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Macro Copie de Valeur seulement

32 réponses
Avatar
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

10 réponses

1 2 3 4
Avatar
Billy
Bonjour,

Cette méthode fonctionne! Youpi!

Il me reste qu'à trouver le moyen de protéger mon classeur sans que les
macros entrent en conflit.... :( Je dévérouille les cellules de D13 à S13
mais la Méthode Insert bogue. J'ai pourtant cocher l'option Permettre
l'insertion de ligne.

Bizarre.

--
Billy



tu peux également mettre ceci :
Sub essai()
With [a13:S13]
..Copy
..Insert Shift:=xlDown
[a14:S14].Value = .Value
[a13:S13].SpecialCells(xlCellTypeConstants, 23).ClearContents
End With
End Sub


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! :)






Avatar
garnote
Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à S13) sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de news:
Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les formules en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas très
problématique, mais j'aimerais beaucoup les conserver. Est-ce possible tu
crois?

--
Billy



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" a écrit dans le message de news:

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" a écrit dans le message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le message de news:

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



























Avatar
cousinhub
:-)

re oops coucinhub
en fait, j'ai compris pourquoi avec la plage complète, ça ne marchait
pas : il faut absolument le .Value
alors que cellule par cellule, on peut s'en penser....strange, very strange
enfin, l'important est que sarko soit chez un pote à bill gates : ainsi,
quand il nous reviendra, toutes nos procs marcheront comme sur des
roulettes
jps

"cousinhub" a écrit dans le message de news:

De ce que j'ai compris, il copie la ligne 13, elle va en 14, dans la
13, il efface tout ce qui n'est pas une formule (afin de les
préserver), et dans la 14, il ne désire que les valeurs.
Le [a14:S14].Value = [a14:S14].Value remplace donc toutes les cellules
(formules ou constantes) par les valeurs qui vont bien.
Enfin d'après ce que j'ai compris....;-)

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" a écrit dans le message de news:
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!













Avatar
jps
coucinhub, s'en penser....bravo la concentration
déjà que chez moi la fin du mois commençait le 6, voilà que les fins de
semaine commencent le mercredi....bouhhhh
jps

"cousinhub" a écrit dans le message de news:

:-)

re oops coucinhub
en fait, j'ai compris pourquoi avec la plage complète, ça ne marchait pas
: il faut absolument le .Value
alors que cellule par cellule, on peut s'en penser....strange, very
strange
enfin, l'important est que sarko soit chez un pote à bill gates : ainsi,
quand il nous reviendra, toutes nos procs marcheront comme sur des
roulettes
jps

"cousinhub" a écrit dans le message de news:

De ce que j'ai compris, il copie la ligne 13, elle va en 14, dans la 13,
il efface tout ce qui n'est pas une formule (afin de les préserver), et
dans la 14, il ne désire que les valeurs.
Le [a14:S14].Value = [a14:S14].Value remplace donc toutes les cellules
(formules ou constantes) par les valeurs qui vont bien.
Enfin d'après ce que j'ai compris....;-)

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" a écrit dans le message de news:
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!















Avatar
Billy
Bonjour,

Quand j'active la macro:

Erreur d'exécution "9". L'indice n'appartient pas à la sélection... Quand tu
me dis "à adapter", tu veux dire probablement d'inscrire le mot de passe que
je veux entre les guillements je présume? C'est pourtant ce que j'ai fait.

En tout cas, si on parvient à faire fonctionner ce fichier, je vous dois
beaucoup!

--
Billy



Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à S13) sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de news:
Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les formules en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas très
problématique, mais j'aimerais beaucoup les conserver. Est-ce possible tu
crois?

--
Billy



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" a écrit dans le message de news:

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" a écrit dans le message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le message de news:

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
































Avatar
jps
bonjour billy
peut-être qu'en plus du mot de passe, le nom de ta feuille est aussi à
adapter....c'est bien la Feuil1?
c'était juste pour faire encore avancer le schmillick
si ta proc tourne, billy, tu sais ce qu'il te reste à faire : TOURNEE
GENERALE et c'est pas le garnote du québec qui y verra un tabernacle
d'inconvénient
jps

"Billy" a écrit dans le message de news:

Bonjour,

Quand j'active la macro:

Erreur d'exécution "9". L'indice n'appartient pas à la sélection... Quand
tu
me dis "à adapter", tu veux dire probablement d'inscrire le mot de passe
que
je veux entre les guillements je présume? C'est pourtant ce que j'ai fait.

En tout cas, si on parvient à faire fonctionner ce fichier, je vous dois
beaucoup!

--
Billy



Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de
news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à S13)
sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de
news:
Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les formules
en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas
très
problématique, mais j'aimerais beaucoup les conserver. Est-ce
possible tu
crois?

--
Billy



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" a écrit dans le message
de news:

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" a écrit dans le
message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le
message de news:

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


































Avatar
garnote
Salut Billy,

Un exemple à cette adresse :

http://cjoint.com/?iissOHCIzO

Est-ce que ça fonctionne à ton goût ?

Serge


"Billy" a écrit dans le message de news:
Bonjour,

Quand j'active la macro:

Erreur d'exécution "9". L'indice n'appartient pas à la sélection... Quand tu
me dis "à adapter", tu veux dire probablement d'inscrire le mot de passe que
je veux entre les guillements je présume? C'est pourtant ce que j'ai fait.

En tout cas, si on parvient à faire fonctionner ce fichier, je vous dois
beaucoup!

--
Billy



Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à S13) sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de news:

Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les formules en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas très
problématique, mais j'aimerais beaucoup les conserver. Est-ce possible tu
crois?

--
Billy



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" a écrit dans le message de news:

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" a écrit dans le message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le message de news:

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


































Avatar
garnote
Plutôt ceci ( je suis déjà sur les effets de la tournée générale ) :

http://cjoint.com/?iisz7Hbkyy

Serge




"garnote" a écrit dans le message de news:
Salut Billy,

Un exemple à cette adresse :

http://cjoint.com/?iissOHCIzO

Est-ce que ça fonctionne à ton goût ?

Serge


"Billy" a écrit dans le message de news:
Bonjour,

Quand j'active la macro:

Erreur d'exécution "9". L'indice n'appartient pas à la sélection... Quand tu
me dis "à adapter", tu veux dire probablement d'inscrire le mot de passe que
je veux entre les guillements je présume? C'est pourtant ce que j'ai fait.

En tout cas, si on parvient à faire fonctionner ce fichier, je vous dois
beaucoup!

--
Billy



Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à S13) sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de news:

Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les formules en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas très
problématique, mais j'aimerais beaucoup les conserver. Est-ce possible tu
crois?

--
Billy



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" a écrit dans le message de news:

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" a écrit dans le message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le message de news:

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






































Avatar
jps
:-)))))
jps

"garnote" a écrit dans le message de news:
%
Plutôt ceci ( je suis déjà sur les effets de la tournée générale ) :

http://cjoint.com/?iisz7Hbkyy

Serge




"garnote" a écrit dans le message de news:

Salut Billy,

Un exemple à cette adresse :

http://cjoint.com/?iissOHCIzO

Est-ce que ça fonctionne à ton goût ?

Serge


"Billy" a écrit dans le message de
news:
Bonjour,

Quand j'active la macro:

Erreur d'exécution "9". L'indice n'appartient pas à la sélection...
Quand tu
me dis "à adapter", tu veux dire probablement d'inscrire le mot de passe
que
je veux entre les guillements je présume? C'est pourtant ce que j'ai
fait.

En tout cas, si on parvient à faire fonctionner ce fichier, je vous dois
beaucoup!

--
Billy



Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de
news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à
S13) sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de
news:
Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les
formules en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas
très
problématique, mais j'aimerais beaucoup les conserver. Est-ce
possible tu
crois?

--
Billy



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" a écrit dans le message
de news:

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" a écrit dans le
message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le
message de news:

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










































Avatar
Billy
Salut les gars!

Vous êtes des génies! Ça fonctionne parfaitement!

C'est exactement ce dont j'avais besoin de faire!!!!

Un gros merci!
--
Billy


"garnote" wrote:

Plutôt ceci ( je suis déjà sur les effets de la tournée générale ) :

http://cjoint.com/?iisz7Hbkyy

Serge




"garnote" a écrit dans le message de news:
Salut Billy,

Un exemple à cette adresse :

http://cjoint.com/?iissOHCIzO

Est-ce que ça fonctionne à ton goût ?

Serge


"Billy" a écrit dans le message de news:
Bonjour,

Quand j'active la macro:

Erreur d'exécution "9". L'indice n'appartient pas à la sélection... Quand tu
me dis "à adapter", tu veux dire probablement d'inscrire le mot de passe que
je veux entre les guillements je présume? C'est pourtant ce que j'ai fait.

En tout cas, si on parvient à faire fonctionner ce fichier, je vous dois
beaucoup!

--
Billy



Déverrouille exclusivement la plage D13:S13
et protège ta feuille. Tu pourras alors utiliser
cette macro :

Sub Copie()
Sheets("Feuil1").Unprotect ("Motdepasse") ' à adapter
Rows("14:14").Insert Shift:=xlDown
Rows("13:13").Copy
Rows("14:14").PasteSpecial Paste:=xlPasteFormats
Rows("14:14").PasteSpecial Paste:=xlPasteValues
[D13:S13].ClearContents
Application.CutCopyMode = False
[D13].Select
Sheets("Feuil1").Protect ("Motdepasse") ' à adapter
End Sub

Serge


"Billy" a écrit dans le message de news:

--
Billy

Salut,
C'est cela, mais effacer les données de D13 à S13...

Et je dois trouver un moyen de protéger ma feuille (sauf de D13 à S13) sans
que mes macros boguent.

... tout un défi!



Salut Billy,

De A13 à C13, tu as des formules,
De D13 à S13, tu entres des données,
Tu veux insérer sous la ligne 13 une ligne qui contiendrait
les valeurs et les formats de A13:C13 et effacer les données
de C13:S13.

Est-ce bien ça que tu veux obtenir ?

Serge


"Billy" a écrit dans le message de news:

Bonjour Serge,

Comment pourrais-je adapter cette procédure pour garder les formules en A13
à C13. Je voudrais supprimer le contenu que de D13 à S13.

Aussi mes mises en forme de bordure ne suivent pas. Ce n'est pas très
problématique, mais j'aimerais beaucoup les conserver. Est-ce possible tu
crois?

--
Billy



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" a écrit dans le message de news:

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" a écrit dans le message de news:
Salut Billy,

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

Serge

"Billy" a écrit dans le message de news:

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











































1 2 3 4