Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1626 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA-E] Problème pour macro collage spécial

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VBA-E] Problème pour macro collage spécial

n°1936140
0takon
Posté le 29-10-2009 à 11:28:56  profilanswer
 

Bonjour,
J'ai un problème avec une macro qui effectue un collage spécial (copie des valeurs sans les formules) vers un nouveau classeur après un clic sur un bouton puis enregistrement du nouveau classeur.
Voici le code utilisé :
 
Public Sub CommandButton1_Click()
sortie = "Sortie" & ".xlsx"
ActiveSheet.Select
Range("A1:B7" ).Select
Selection.Copy
Workbooks.Add.SaveAs sortie
Worksheets.Add.Name = "Consommation"
Workbooks(sortie).Activate
Sheets("Consommation" ).Select

'Jusqu'ici tout va bien le classeur avec une feuille consommation est bien créé.
'J'ai une erreur ensuite, une alertbox comportant seulement le texte "400" !
Range("A1" ).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Workbooks(sortie).Save
Workbooks(sortie).Close
End Sub

 
Merci d'avance pour vos réponses

mood
Publicité
Posté le 29-10-2009 à 11:28:56  profilanswer
 

n°1937027
dje69r
Arme de distraction massive
Posté le 02-11-2009 à 14:31:39  profilanswer
 

C'est "assez simple" en fait
Excel degage ton Copy apres une autre action. Que ca soit en code, ou en utilsiation "normale".
 
D'ailleurs tu aurais du voir que ta selection n'avait pas les petits pointillés clignotants comme lors d'un copier. ;)
 
Il faut que tu copies et colles quasiment a la suite.
 

  • Tu créés ton nouveau fichier.
  • Tu atteinds ton premier fichier.
  • Tu copies ta selection.
  • Tu atteinds ton nouveau fichier.
  • Tu colles.
  • Enjoy


Code :
  1. Public Sub CommandButton1_Click()
  2.     sortie = "Sortie" & ".xls"
  3.     'sauvegarde du nom du classeur et de la feuille active
  4.     originefeuille = ActiveSheet.Name
  5.     origineclasseur = ActiveWorkbook.Name
  6.     'creation de ton doc "sortie"
  7.     Workbooks.Add.SaveAs sortie
  8.     Worksheets.Add.Name = "Consommation"
  9.    
  10.     'retour sur le fichier d'origine pour copier
  11.     Workbooks(origineclasseur).Activate
  12.     Sheets(originefeuille).Select
  13.     Range("A1:B7" ).Select
  14.     Selection.Copy
  15.    
  16.     'collage dans le classeur créé
  17.     Workbooks(sortie).Activate
  18.     Sheets("Consommation" ).Select
  19.     Range("A1" ).Select
  20.     Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
  21.     Workbooks(sortie).Save
  22.     Workbooks(sortie).Close
  23. End Sub


Message édité par dje69r le 02-11-2009 à 14:31:52

---------------
GreenBrown Energy, avec notre partenaire historique greenpeacefr, nous lançons le 1er fournisseur d'électricité SANS nucléaire. Une offre 100% EnR + backup transitoire
n°1937279
0takon
Posté le 03-11-2009 à 14:58:48  profilanswer
 

Merci beaucoup,
J'avais encore une erreur persistante mais en supprimant le  Range("A1" ).Select avant le paste special ça fonctionne.
 
Maintenant j'ai un autre souci, je voudrais qu'il réalise un collage spécial comme quand je fais coller les valeurs et formats des nombres.
Dans la macro actuelle il ne fait que les valeurs, j'arrive aussi à faire seulement le format. Mais les 2 je ne trouve pas ?
 
Merci d'avance pour votre aide.

n°1937577
dje69r
Arme de distraction massive
Posté le 04-11-2009 à 12:45:09  profilanswer
 

Il faut faire les deux a la suite non ?
 
Un coup tu colles les valeurs, puis les formats.
 

Code :
  1. '
  2. Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
  3. Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False


 
Ou alors j'ai pas compris la question...


Message édité par dje69r le 04-11-2009 à 12:45:37

---------------
GreenBrown Energy, avec notre partenaire historique greenpeacefr, nous lançons le 1er fournisseur d'électricité SANS nucléaire. Une offre 100% EnR + backup transitoire

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [VBA-E] Problème pour macro collage spécial

 

Sujets relatifs
Problème actionPerformed(ActionEvent e)Problème avec répétitiion du On error Goto xx
probleme liens dreamweaver mozilla[RESOLU] Probleme couleur PC et MAC en HTML!! HELP PLZ :)
Problème avec un textareaProblème d'utilisation de REPLACE
[VBA] Passer d'une TextBox à une autre avec TABProblème avec boucle while qui ne s'arrêt pas
[PHP] Include. Problème de mise en place.Problème pour déclencher un input type=file
Plus de sujets relatifs à : [VBA-E] Problème pour macro collage spécial


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR