Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
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 !
je me demandais si c'est possible de faire une macro qui une fois activé exporte une feuille de calcul puis ouvre un autre fichier excel, crée une feuille vierge et colle ma feuille exporter ??
Re : exporter une feuille vers un autre fichier excel
Bonjour,
Un exemple à adapter à la situation.
Code:
Dim sh As Worksheet
Set sh = Sheets("Origine") 'Feuille à copier
'Ouvrir le classeur destination
Workbooks.Open Filename:=ThisWorkbook.Path & "\classeur4.xls"
'Copier la feuille dans le classeur destination
sh.Copy After:=Workbooks("Classeur4.xls").Sheets(1)
Re : exporter une feuille vers un autre fichier excel
Avec ceci:
Code:
Dim sh As Worksheet
Set sh = Sheets("Origine") 'Feuille à copier
'Ouvrir le classeur destination
Workbooks.Open Filename:=ThisWorkbook.Path & "\classeur4.xls"
'Copier la feuille dans le classeur destination
sh.Copy After:=Workbooks("Classeur4.xls").Sheets(1)
With ActiveSheet
.UsedRange.Copy
.UsedRange.Range("A1").PasteSpecial xlPasteValues
End With
Application.CutCopyMode = False
La méthode PasteSpecial d'une feuille diffère de la méthode PasteSpecial d'une plage de cellule. C'est pour cela que tout ne peut être fait en une seule opération.
Re : exporter une feuille vers un autre fichier excel
j'aimerais améliorer le code
en faite au lieu qu'il me crée un nouveau classeur j'aimerais que si le nom du classeur exporté existe deja alors il le remplace
est-ce possible d'indiqué ca dans la macro ??
Re : exporter une feuille vers un autre fichier excel
Bonjour Alfonso,
A quel moment nommes-tu le classeur destination, quand l'enregistres-tu?
sur quel critère chercher si un classeur existe.
Avec la solution plus haut tu peux enregistrer le classeur destination en écrasant l'existant. Si tu veux que cela ce fasse automatiquement, il nous faut plus de détails.
Re : exporter une feuille vers un autre fichier excel
slt
j'ai plusieur classeur ou j'ai écrit la macro que tu ma donné et le nom de la feuille est spécifique au classeur
donc il n'existe pas deux classeur identique
ensuitte à l'origine le classeur de destination est vierge donc quand j'exporte une feuille d'un classeur la une nouvelle feuille se crée pour l'instant tout va bien
mais quand je met a jour la feuille du classeur que j'exporte alors je doit la réexporter dans le classeur de destination est comme le nom de la feuille est identique alors il doit remplacé l'existante par la nouvelle
Re : exporter une feuille vers un autre fichier excel
Re bonjour Alfonso,
Voici un nouveau code.
Code:
Dim sh As Worksheet, sh2 As Worksheet
Dim NomFeuilleDestination As String
Set sh = Sheets("Origine") 'Feuille à copier
NomFeuilleDestination = "Destination"
'Ouvrir le classeur destination
Workbooks.Open Filename:=ThisWorkbook.Path & "\classeur4.xls"
' Empêcher les avertissements excel
Application.DisplayAlerts = False
' Eviter le message d'erreur si la feuille destination n'existe pas
On Error Resume Next
' Tester si la feuille Destination existe
Set sh2 = ActiveWorkbook.Sheets(NomFeuilleDestination)
' Si elle existe on la supprimer
If Not sh2 Is Nothing Then sh2.Delete
'Rétablir la gestion normale des erreurs
On Error GoTo 0
' Rétablir les avertissement
Application.DisplayAlerts = True
'Coller la feuille Origine dans le classeur destination
sh.Copy After:=Workbooks("Classeur4.xls").Sheets(1)
With ActiveSheet
.UsedRange.Copy
.UsedRange.Range("A1").PasteSpecial xlPasteValues
.Name = NomFeuilleDestination
End With
Application.CutCopyMode = False
Il te faudra renseigner le nom de la feuille destination, tu l'auras compris, j'en suis sûr.
Re : exporter une feuille vers un autre fichier excel
décidement tu es trop fort ca marche
mais admettons que au lieu d'écrire manuellement le nom de la feuille de destination je lui indique une cellule qui porte le nom de la feuille de destination
Dim sh As Worksheet, sh2 As Worksheet
Dim NomFeuilleDestination As String
Set sh = Sheets(4) 'Feuille à copier
la si la feuille n'existe pas il va me la crée avec comme nom celui qui est en C3
mais si je réexporte la feuille alors il me la colle dans le classeur de destination avec comme nom, le nom d'origine
Re : exporter une feuille vers un autre fichier excel
Re,
Là j'ai du mal à te suivre....
Si tu réexporte ta feuille dans un nouveau classeur ou un classeur existant, si le nom existe déjà la feuille est supprimée et s'il n'existe pas elle est créee avec le nom en [C3]. Ok?
le nom de la feuille de destination se trouve dans la cellue C3
or quand j'exécute la macro le nom de ma feuille n'est pas le nom qui est dans la cellule C3 mais le nom de la feuille d'origine ET1730
donc au lieu d'indiqué manuellement le nom de la feuille de destination (nom qui est dans la cellule C3), j'aimerais qui cherche automatiquement le nom de la feuille de destination