J'ai une macro où je dois copier manuellement des données, je viens sur mon
classeur et je clique sur un bouton qui exécute une macro. Mon problème est
qu'il semblerait que dans certains cas la macro fonctionne et dans d'autres
elle ne fonctionne pas... Cela plante sur ActiveSheet.Paste alors même que
j'ai bien des données qui ont été copiées. J'ai le message "Erreur
d'exécution 1004 : La méthode Paste de la classe Worksheet a échoué" et
effectivement lorsque je fais un clic-droit j'ai Collé qui est grisé... il
n'y a plus de données à coller sur la feuille.
Voici mon script :
Sheets("Coller").Select
Cells.Clear
Range("A1").Select
ActiveSheet.Paste <= là où se produit l'erreur
[mon traitement...]
Le plus étonnant est que la macro fonctionnait correctement avant... sans
qu'il y'ai modification. C'est comme si il y'avait quelque chose de changer
dans l'environnement ???
@+
HD
Chose étrange, je redémarre complètement mon PC et là la macro refonctionne...
Ce n'est pas la première fois que j'ai ce souci.
@+ HD
MichD
Bonjour,
Si tu veux copier seulement les valeurs d'une plage de cellules vers une autre feuille,
tu peux utiliser ceci : '--------------------------------------------- Sub test()
Sheets("Coller").Cells.Clear
With Sheets("Source") ' Nom feuille à adapter .Range("A1:G25").Copy End With
With Sheets("Coller") .Range("A1").PasteSpecial xlPasteValues End With
End Sub '---------------------------------------------
Et si tu veux tout coller y compris le format des cellules '--------------------------------------------- Sub Test() With Sheets("Source") ' Nom feuille à adapter .Range("A1:G25").Copy Sheets("Coller").range("A1") End With End Sub '---------------------------------------------
Si tu veux copier seulement les valeurs d'une
plage de cellules vers une autre feuille,
tu peux utiliser ceci :
'---------------------------------------------
Sub test()
Sheets("Coller").Cells.Clear
With Sheets("Source") ' Nom feuille à adapter
.Range("A1:G25").Copy
End With
With Sheets("Coller")
.Range("A1").PasteSpecial xlPasteValues
End With
End Sub
'---------------------------------------------
Et si tu veux tout coller y compris le format des cellules
'---------------------------------------------
Sub Test()
With Sheets("Source") ' Nom feuille à adapter
.Range("A1:G25").Copy Sheets("Coller").range("A1")
End With
End Sub
'---------------------------------------------
Si tu veux copier seulement les valeurs d'une plage de cellules vers une autre feuille,
tu peux utiliser ceci : '--------------------------------------------- Sub test()
Sheets("Coller").Cells.Clear
With Sheets("Source") ' Nom feuille à adapter .Range("A1:G25").Copy End With
With Sheets("Coller") .Range("A1").PasteSpecial xlPasteValues End With
End Sub '---------------------------------------------
Et si tu veux tout coller y compris le format des cellules '--------------------------------------------- Sub Test() With Sheets("Source") ' Nom feuille à adapter .Range("A1:G25").Copy Sheets("Coller").range("A1") End With End Sub '---------------------------------------------