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

VBA copie d'un classeur à l'autre sans liens

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 !

actaris51

XLDnaute Occasionnel
Bonjour,
J'utilise la fonction :
classeurSource.Sheets("source").Cells.Copy classeurDestination.Sheets("destination").Range("A1")
afin de copier une feuille d'un classeur vers un autre
seulement cette fonction garde aussi les "noms" défnis pour certaines plages de données du classeur source, et les intègre à mon classeur de destination.
Est il possible de copier les données sans que soient aussi copiés les noms associées ?
Merci
 
Re : VBA copie d'un classeur à l'autre sans liens

Bonjour,

A tester :

Sub Test()
classeurSource.Sheets("source").Cells.Copy
With classeurDestination.Sheets("destination").Range("A1")
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats 'Optionnel
End With
End Sub


NB - il vaut mieux remplacer Cells.Copy par Range("Zone à copier").Copy
 
Re : VBA copie d'un classeur à l'autre sans liens

en fait j'ai un bug
Pour un onglet, ca marche
mais j'en copie 3 d'affilée :
classeurSource.Sheets("Supplier Deliverables").Cells.Copy
With classeurDestination.Sheets("Deliverables_Database").Range("A1")
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats 'Optionnel
End With
classeurSource.Sheets("Risks-Issues").Cells.Copy
With classeurDestination.Sheets("Risks_Database").Range("A1")
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats 'Optionnel
End With
classeurSource.Sheets("KPIs").Cells.Copy
With classeurDestination.Sheets("Quality_Database").Range("A1")
.PasteSpecial Paste:=xlPasteValues
.PasteSpecial Paste:=xlPasteFormats 'Optionnel
End With

et j'ai comme message d'erreur :
La méthode PasteSpecial de la classe Range a echouée
 
Re : VBA copie d'un classeur à l'autre sans liens

Re,

chez moi, pas de plantage.
A quel endroit cela plante t il ?

Il faut éviter de faire un copy des Cells. Ca manipule un gros volume de données ...
 
Dernière édition:
Re : VBA copie d'un classeur à l'autre sans liens

sinon il y a la solution de supprimer les plages nommées du classeur déstination par macro (si bien sur il n'y a pas de plage nommée dnas le classeur de déstination)


Dim I As Integer
On Error Resume Next
I = MsgBox("Attention ce code supprime les plages nommées, pas de retour possible!" & Chr(10) & "Voulez vous continuer?", vbYesNo, "Attention à la macro")
If I = 6 Then
For I = 1 To ActiveWorkbook.Names.Count
ActiveWorkbook.Names(I).Delete
Next I
End If
 
- 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

Discussions similaires

Réponses
9
Affichages
886
L
Réponses
11
Affichages
2 K
L
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…