Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

PasteSpecial 2010 vs 2003

  • Initiateur de la discussion Initiateur de la discussion Jidé
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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.
 
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
 
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:
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,
 
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:
Re : PasteSpecial 2010 vs 2003

Bonjour Staple,

Désolé, mais je n'avais lu que la première réponse, celle de Philippe.
Merci, je vais essayer ton code, et je te ferai part du résultat.

Cordialement,
 
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é
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…