PasteSpecial 2010 vs 2003

Jidé

XLDnaute Nouveau
Bonjour,

Je n'arrive pas à faire fonctionner sous xl2003 mon utilitaire développé sous xl2010.
J'ai cherché dans les archives, mais je n'ai rien trouvé. Ni ici, ni...ailleurs.
Voici le bout de code incriminé :

Sheets("Départs").Select
Range("D6").PasteSpecial xlPasteValues
Application.CutCopyMode = False

J'ai effectué la conversion tant à partir du PC xl2010 qu'à partir du PC xl2003.
Même résultat :
Erreur d'éxécution "1004"
La méthode PasteSpecial de la classe Range a échoué.

Et moi...aussi !

Je fais donc appel à vous.
Merci d'avance.
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : PasteSpecial 2010 vs 2003

Bonjour Jidé,

question qui peut paraître idiote mais en voyant ton code,

y avait-il eu copie de cellules avant de coller ?
y aurait-il des cellules fusionnées qui perturbent la procédure ?


à+
Philippe
 

Staple1600

XLDnaute Barbatruc
Re : PasteSpecial 2010 vs 2003

Bonjour à tous

S'il s'agit de copier en valeurs seules
Ces deux macfos doievent fonctionner quelque soit la version d'Excel
Code:
Sub a()
Sheets("Départs").Range("A1").Copy
Sheets("Départs").Range("D6").PasteSpecial xlValues
End Sub
Code:
Sub b()
With Sheets("Départs")
.Range("D6") = .Range("A1")
End With
End Sub

Lamacro a plantera si présence cellules fusionnées comme l'a mentionné phlaurent55
Dans ce cas la macro b devrait ne pas planter ;)
 
Dernière édition:

Jidé

XLDnaute Nouveau
Re : PasteSpecial 2010 vs 2003

Bonjour Philippe,

Merci pour la réponse.
Oui le code pour une autre feuille active ("Groupage") se termine par banalement par :

Range("A1:C48").Copy

Soit les quatre lignes successives :

Range("A1:C48").Copy
Sheets("Départs").Select
Range("D6").PasteSpecial xlPasteValues
Application.CutCopyMode = False

Cordialement,
 

Staple1600

XLDnaute Barbatruc
Re : PasteSpecial 2010 vs 2003

Re


Jidé:
Tu ne me salues pas ?
Pourtant je me suis brossé les dents après mon dernier repas
A moins que tu ais zappé mon précédent message

Ce qui est bien dommage, car il y avait du VBA dedans qui pourrait t'être utile...

Au cas où, je remets un bout de code modifié qui ne plante pas ;)
VB:
Sub c()
Sheets("Départs").Range("D6").Resize(48, 3).Value = Sheets(1).Range("A1:C48").Value
'remplacer Sheets(1) par le nom de la feuille source
End Sub
 
Dernière édition:

Jidé

XLDnaute Nouveau
Re : PasteSpecial 2010 vs 2003

Bonjour,

Merci à vous deux.
Le second code de Staple fonctionne parfaitement.
En outre je le comprends, et je comprends pourquoi il fonctionne !
En revanche j'ai essayé le code engendré par l'éditeur de macro xl2003.
Et à ma grande surprise il fonctionne sous xl 2010, et pas sous xl2003 !
J'en déduis, qu'il s'agit d'un pb propre à xl2003, et pas un pb consécutif à la conversion xl2010 vers xl2003.

Cordialement,

Jidé
 

Statistiques des forums

Discussions
312 668
Messages
2 090 739
Membres
104 643
dernier inscrit
adriano22