Copier une feuille dans un autre classeur : Erreur '1004

Bonjour,

Je vous explique mon problème :

J'ai un classeur avec un bouton dessus qui me permet de créer un nouveau classeur avec des données dedans, une fois ce classeur créer il faudrait que je copie sa première feuille (il en a qu'une de toue façon) sur mon classeur de base (là où il y a le bouton). J'enregistre donc mon nouveau fichier (obligatoire pour copier une feuille il me semble), cependant ensuite il me dit "excel ne parvient pas à insérer les feuilles dans le classeur de destination car il contient moins de lignes et de colonnes que le classeur source". J'ai donc regardé si le format de fichier était le même et oui quand je regarde leurs propriété eux deux ont : " Feuille Microsoft Excel 97-2003 (.xls)". Je ne comprends donc pas pourquoi je n'arrive pas à copier cette feuille.

Merci d'avance pour vos aides.

Zapsalis.

Bonjour,

au lieu de copier toute la feuille, copie juste usedrange

Bonjour Steelson,

Cela ne marche toujours pas, même en utilisant usedRange.

Quelle est la macro activée par le bouton ?

Peux-tu donner a minima une copie des fichiers (anonymisée) ?

La Macro fait quelques centaines de lignes je ne peux donc pas l'envoyer, cependant voici la partie de mon code qui est censé demander à l'utilisateur de choisir un fichier d'enregistrement et par la suite de le copier dans le fichier de base :

Dim Repertoire As FileDialog 'Selection du repertoire de destination  

 Set Repertoire = Application.FileDialog(msoFileDialogFolderPicker)  

 With Repertoire  

If .Show = -1 Then  

 annulation = False  

Else  

 annulation = True  

 End If  

 End With  

 If (annulation = False) Then  

Wbk.SaveAs Filename:=Repertoire.SelectedItems(1) & "\BOM_Sources_" & NumProjet & "_" & NomProjet & "_Rev" & RevPcb & versionNomenclature & ".xls", _ FileFormat:=56

Wbk.Sheets("Sources").Copy after:=Workbooks("BOM TRAVAIL 2").Sheets(10).

End If

En sachant que la je copie en utilisant la méthode : .copy et after:=, mais j'ai aussi essayé avec usedRange / destination / paste mais rien ne marche.
De même pour sheets(10), j'ai essayé en créant une feuille pour mettre la copie dedans, sans créer de feuille, en marquant le nom de la feuille et non pas (10).

Bonjour,

tu utilises la mauvaise balise pour mettre tes macros ... utilise </> et non []

ceci ne peux pas fonctionner !!

Wbk.Sheets("Sources").Copy after:=Workbooks("BOM TRAVAIL 2").Sheets(10).

tu termines par un . !!

essaie ceci

Wbk.Sheets("Sources").usedrange.Copy destination:=Workbooks("BOM TRAVAIL 2").Sheets(10).cells(1,1)

encore une fois, mets un fichier simplifié, sinon il faut qu'on le fasse nous-même au détriment d'autres réponses !

Bonjour Steelson,

Merci de ton aide ça a bien marché comme ça, je pense que c'est le fait de rajouter cells(1,1) qui a permis de fonctionner.

Bonne journée,

Zapsalis.

oui et usedrange

Rechercher des sujets similaires à "copier feuille classeur erreur 1004"