Copie Valeur et format, pas la formule

jackfred

XLDnaute Junior
bonjour,

Je cherche à copier la valeur et le format d'une plage de de donnée.
Par contre je retrouve plus les codes pour cela

De même je cherche à supprimer les valeur et les formats d'une autre plage de donnée.

Le tout en VBA...


Je pense avoir trouvé un élément pour la première partie, mais cela bloque à la deuxième ligne :

Worksheets("Regional").Range("6:50").Copy
Worksheets("RegionalN-1").Range("6:50").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False


En ramplassant "range" par "rows" ce ma fait tjs pareil

Merci de votre aide

fred
 
Dernière édition:

jackfred

XLDnaute Junior
Re : Copie Valeur et format, pas la formule

Merci SergiO

ct bien ca...

Par contre maintenant ca bloque sur

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False


J'ai essayé ce qui suit, même pb :

Worksheets("Regional").Activate
Worksheets("Regional").Rows("6:50").Copy
Worksheets("RegionalN-1").Activate
Worksheets("RegionalN-1").Rows("6:50").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Je ne vois pas le pb

Merci

fred
 

Pierrot93

XLDnaute Barbatruc
Re : Copie Valeur et format, pas la formule

Bonjour Fred, Sergio

essaye peut être comme ci dessous :

Sub test()
Sheets("Regional").Rows("6:50").Copy
With Sheets("RegionalN-1")
.Rows("6:50").PasteSpecial xlPasteValues
.Rows("6:50").PasteSpecial xlPasteFormats
End With
End Sub

bonne journée
@+
 

jackfred

XLDnaute Junior
Re : Copie Valeur et format, pas la formule

Merci bcp ca m'a permis de réduire qques ligne de code.

Par contre la ligne suivante ne marche tjs pas...

.Rows("6:50").PasteSpecial xlPasteValues

L'autre seule marche bien, mais avec le "xlPasteValues", y a tjs un pb...
et je n'arrive tjs pas a comprendre malgrès votre aide et mes 4 livre de code ouvert à coté de moi ;)

Merci de vortre aide

Fred
 

jackfred

XLDnaute Junior
Re : Copie Valeur et format, pas la formule

Même résultat...

Je vous met le code au complet peut-etre y a-t-il interférence entre plusieurs lignes... je ne sais plus ou chercher
-----------------------------
Sub nvelle_annee()

Dim Nom As String
Dim Nom2 As String
Dim Nom2b As String
Dim annee As Integer


ActiveWorkbook.Worksheets("Garde").Select
ActiveWorkbook.Save
ActiveWorkbook.Worksheets("Parametres").Select
'Nom = ActiveWorkbook.Path & "\Agences\" & ActiveWorkbook.Sheets("Parametres").Range("F28") & ".xls"

Nom = ActiveWorkbook.Name
Nom2 = ActiveWorkbook.Path & "\" & ActiveWorkbook.Sheets("Parametres").Range("F28") & ActiveWorkbook.Sheets("Parametres").Range("G28") + 1 & ".xls"
Nom2b = ActiveWorkbook.Sheets("Parametres").Range("F28") & ActiveWorkbook.Sheets("Parametres").Range("G28") + 1 & ".xls"
ActiveWorkbook.SaveCopyAs Filename:=Nom2
Workbooks.Open Nom2

annee = Worksheets("Garde").Range("F15").Value
Worksheets("Garde").Range("F15").Value = annee + 1

'Le code en question ici!!!!!
Sheets("Regional").Rows("6:50").Copy
Sheets("RegionalN-1").Select
Rows("6:50").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False


Worksheets("Janv").Range("A:Z").Delete
Worksheets("Fevr").Range("A:Z").Delete
Worksheets("Mars").Range("A:Z").Delete
Worksheets("Avr").Range("A:Z").Delete
Worksheets("Mai").Range("A:Z").Delete
Worksheets("Juin").Range("A:Z").Delete
Worksheets("Juil").Range("A:Z").Delete
Worksheets("Aout").Range("A:Z").Delete
Worksheets("Sept").Range("A:Z").Delete
Worksheets("Oct").Range("A:Z").Delete
Worksheets("Nov").Range("A:Z").Delete
Worksheets("Dec").Range("A:Z").Delete

Worksheets("Garde").Select
Workbooks(Nom2b).Save

Workbooks(Nom).Activate
Workbooks(Nom).Save
Workbooks(Nom).Close

End Sub


-------------------

Se qui me parrait bizard c'est que le PasteFormats marche et pas le pastevalues.

J'ai essayer cela aussi :
----------------------------
Sheets("Regional").Rows("6:50").Copy
With Sheets("RegionalN-1")
.Rows("6:50").Clear
.Rows("6:50").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
.Rows("6:50").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End With
-------------------------------

Et cela :

--------------------------------
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
--------------------------------

Et

Selection.PasteSpecial xlPasteValues
...


Tjs le meme résultat.

Pourrait-il y avoir des intéférences avec les références (dans le menu outils).
Ou autre.
J'ai Excel 2003

Qd je créé une macro par l'enregistreur, en reprenant les étapes du copier coller, ca marche.
Dès que je colle le code dans cette macro, ca ne marche plus.. j'en pert la tete


Merci pour votre aide... snif

fred
 

jackfred

XLDnaute Junior
Re : Copie Valeur et format, pas la formule

Je pense que j'ai trouver le PB, ca viendrait du format des ignes a copier ou il y a des cellules fusionnées.
Par contra je n'arrive pas a gérer ce pb justement.

il semble que le seul moyen soit de défusionner ttes les celulles fusionnées.

Est-il possible de faire autrement?


Merci

fred
 

Pierrot93

XLDnaute Barbatruc
Re : Copie Valeur et format, pas la formule

Re

essaye alors d'inverser, tu copies d'abord le format puis les valeurs :

Code:
Sub test()
Sheets("Regional").Rows("6:50").Copy
With Sheets("RegionalN-1")
.Rows("6:50").PasteSpecial xlPasteFormats
.Rows("6:50").PasteSpecial xlPasteValues
End With
End Sub

quelle version Excel as tu ?

@+
 

jackfred

XLDnaute Junior
Re : Copie Valeur et format, pas la formule

J'ai Excel 2003

Concernant le centrage sur plusieurs colonne, je ne peut pas l'utiliser pour diverses raison, propres à l'application.

pour l'inversion des deux lignes.. j'ai aussi essayé.. même résultat...

Je ne comprend plus rien


fred
 

jackfred

XLDnaute Junior
Re : Copie Valeur et format, pas la formule

Bonjour tt le monde...

Bon j'ai ca, ca marche, même avec les cellules fusionnées...
Ne me demandez pas pquoi... j'y comprend rien ;)

En tt cas merci à tt le monde pour votre aide
C'a m'a permis de comprendre pas mal de chose, bien qu'il me reste un doute sur le résultat ;)..
Merci à tous


Sheets("RegionalN-1").Select
Rows("6:50").Select
Rows("6:50").Clear
Sheets("Regional").Select
Sheets("Regional").Rows("6:50").Copy
Sheets("RegionalN-1").Select
Rows("6:50").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
 

Staple1600

XLDnaute Barbatruc
Re : Copie Valeur et format, pas la formule

Re

Ces modifications ne compremettent pas le bon fonctionnement de ta macro?
(je ne peux pas tester, je t'en laisse le soin)

Sheets("RegionalN-1").Rows("6:50").Clear
Sheets("Regional").Rows("6:50").Copy
Sheets("RegionalN-1").Rows("6:50").Select
Selection.PasteSpecial xlPasteValues , xlNone, False, False
Selection.PasteSpecial xlPasteFormats , xlNone, False, False

Je crois qu'il est possible de faire quelquechose
pour .Copy également

Finalement j'ai fais un test
En fait le code plus haut génére des erreurs

Celui-ci (voir ci-dessous) fonctionne
Code:
Sub test()
' à adapter le noms des feuilles
Sheets("Feuil2").Rows("6:50").Clear
Sheets("Feuil1").Activate
ActiveSheet.Rows("6:50").Copy
Sheets("Feuil2").Activate
ActiveSheet.Rows("6:50").Select
    With Selection
        .PasteSpecial xlPasteValues ', xlNone, False, False (oté apres avoir lu la macro de Pierrot93)
        .PasteSpecial xlPasteFormats ', xlNone, False, False (idem)
    End With
Application.CutCopyMode = False
End Sub

J'avais zappé la macro de Pierrot93
qui est beaucoup plus concise (désolé)

J'ai essayé les différents exemples de code (avec une préférence pour celui de Pierrot93)
Dès qu'il y a des cellules fusionnées il y a un message d'erreur

Donc je suppose que tu n'utilises plus de cellules fusionnées, non?
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
141
Réponses
5
Affichages
161

Statistiques des forums

Discussions
312 392
Messages
2 088 004
Membres
103 693
dernier inscrit
vincs