Macro VBA "copier coller avec la mise en forme"

  • Initiateur de la discussion Eliane
  • Date de début
E

Eliane

Guest
Bonjour,

Vous aller rire mais j'ai un soucis de débutante :

J'ai fait une macro qui copie une cellule avec sa liste de choix dans la feuille 'jan-fev' et qui colle cette cellule dans une feuille 'tmp'.

Quand je déroule en pas à pas (avec Alt F11 + F8...) cette macro pour copier la cellule C2 de la feuille 'jan-fev' vers la feuille 'tmp', j'ai sytématiquement une erreur au moment du 'paste'

Cette erreur ce passe sur mon XP SP2 et sur un autre XP SP1.

Sur ces 2 PC, je suis en Excel 2002 SP3 et le message d'erreur est :
'la méthode 'Paste' de l'objet '_Worksheet' a échoué'

Evidement le reste du code VBA s'effectue mal.

L'erreur parrait grave car le N° de l'erreur affiché est bisard mais surtout il est impossible de quitter excel sans tuer la tache excel par alt Ctrl Supp...

Le but de ma future macro sera de copier coller une zone définie autour d'une cellule active choisie par l'utilisateur

Franchement, je vois mal comment trouver ce qui coince dans mon fichier ou dans mes listes de choix que je joins pour avoir vos avis sur la méthode d'investiguation qui va bien.

D'avance merci

Lili la débutante
[file name=MacroCopierCollerKO.zip size=23203]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/MacroCopierCollerKO.zip[/file]
 

Pièces jointes

  • MacroCopierCollerKO.zip
    22.7 KB · Affichages: 313

Creepy

XLDnaute Accro
Bonsoir le Forum, Eliane,

je ne comprends pas grnd chose à ton fichier, je cherche desperement ton + à l'extreme gauche ! :(

Mais is j'ai bien compris en survolant le fichier, tu ne peux pas copier/coller une cellule de liste de validation.

Tu ne peux pas faire un coller classique il faut faire un coller valeur avec cette commande

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

Voial, mais je suis pas sûr de t'aider je fatigue il se fait tard !

@+

Creepy
 
E

Eliane

Guest
Bonsoir Creepy et le forum,

Super rapide ta réponse Creepy mais quand j'éssaie ta sympatique proposition de code cela recopie bien le contenu mais ni la liste de choix ni la mise en forme ne sont recopiées..

J'ai également du mal à saisir pourquoi tu parles de signe + à l'extrème gauche puisque dans l'exemple je n'ai mis aucun Groupe ou Plan

NB : j'aurai ultérieurement à faire une macro qui récupèrera la zone écrite dans 'tmp' pour
la mettre là ou le désir l'utilisateur.
J'ai donc besoin dès à présent de copier mes listes en gardant les mises en forme dans 'tmp'

D'avance merci à tous

Eliane
 
E

Eliane

Guest
KO:Macro VBA copier coller avec les listes de choi

Bonsoir Hellboy et le forum

Malheureusement cette deuxième proposition de code ne recopie pas les listes de choix visibles dans mon fichier joint plus haut dans ces posts.

Suis-je tombée sur une impossibilité ou un bug de VBA pour Excel ?

D'avance merci de votre aide

Eliane
 

Dan

XLDnaute Barbatruc
Re:KO:Macro VBA copier coller avec les listes de choi

Bonsoir,

Essaie ce code à la place du tien :

Code:
Sub Copie()
Dim lafeuille As Variant
Application.ScreenUpdating = False
    lafeuille = ActiveSheet.Name
    ActiveCell.Copy
    Worksheets('Tmp').Range('A1').PasteSpecial Paste:=xlPasteValidation, _
    Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Sheets(lafeuille).Activate
    Application.CutCopyMode = False
    Selection.ClearContents
Application.ScreenUpdating = True
End Sub

Si pb n'hésite pas

;)
 

Hellboy

XLDnaute Accro
Re:KO:Macro VBA copier coller avec les listes de choi

Bonsoir a tous

Eliane, malheureusement je soupçonne une mauvaise manipilation de ta part ou peut être une incompatibilité de commande de par la version d'Excel que j'emplois avec la tienne.

Est-ce que tu pourrais joindre ton fichier dans lequel tu a appliqué les essaies de code que l'on t'a proposé s.v.p.

merci !
 
E

Eliane

Guest
Re:KO:Macro VBA copier coller avec les listes de choi

Bonjour Dan et le Forum

Effectivement ton code recopie la liste de choix MAIS sans recopier les mises en forme.

Comme je suis débutante, je te sollicite encore pour savoir si tu as une proposition complémentaire pour recopier également les couleurs de remplissage, les couleurs des polices, etc

D'avance merci

Eliane
 

Dan

XLDnaute Barbatruc
Re:KO:Macro VBA copier coller avec les listes de choi

Re,

Essaie ceci :

Code:
Sub Copie()
Dim lafeuille As Variant
Application.ScreenUpdating = False
    lafeuille = ActiveSheet.Name
    ActiveCell.Copy
    With Worksheets('Tmp').Range('A1')
    .PasteSpecial Paste:=xlPasteValidation
    .PasteSpecial Paste:=xlValues
    .PasteSpecial Paste:=xlFormats
    End With
    Sheets(lafeuille).Activate
    Application.CutCopyMode = False
    Selection.ClearContents
Application.ScreenUpdating = True
End Sub

Si pb n'hésite pas

;)
 
E

Eliane

Guest
OK:Macro VBA copier coller avec les listes de choi

Superbe Dan !

Je vais essayer de recopier des zones entières en adaptant ton code.

En regardant rapidemnt ton code initial, je vois que tu utilisais déjà :

le type Variant et les méthodes :

Application.ScreenUpdating = False

expression.PasteSpecial Paste:=xlPasteValidation, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Application.ScreenUpdating = True



Depuis lors, plus d'erreur en pas à pas quand le paste est executé

Sans abuser de ton temps, peux-tu me dire pourquoi le paste classic est interdit au point de planter Excel tel que je l'ai décrit dans mon post initial ci-dessus ?

En attendant merci encore à toi et au Forum

Lili
:kiss:
 

Dan

XLDnaute Barbatruc
Re:OK:Macro VBA copier coller avec les listes de choi

Re,

Le paste classique te permet de coller des valeurs, des formules ou des formats.

Dans le cas de la liste de validation, il s'agit d'un objet; il te faut passer par Collage spécial qui inclu cette possibilité.

Si pb n'hésite pas.

;)
 
E

Eliane

Guest
Résolu: VBA copier coller avec les listes de choix

Dan,

Tu me rassures, car franchement le N° (négatif!) de l'erreur et le texte qui s'affiche quand on fait un 'paste' classic avec une liste de validation est vraiment peu explicite...

L'aide de Billou sur ces spécificités de la fonction 'paste' est comme toujours dédiée aux brunes..

Ce qui est fabuleux c'est qu'un 'paste' classic avec une liste de validation, oblige à sortir d'Excel par ALT CONTROL SUPPR ! !

Avec toi c'est franchement plus limpide

Bisou et merci à ce Forum

La blonde de Tahiti
;)
 

Discussions similaires

Réponses
9
Affichages
425

Statistiques des forums

Discussions
312 505
Messages
2 089 070
Membres
104 019
dernier inscrit
BenKmc