Comment généraliser l'action d'une macro

  • Initiateur de la discussion Initiateur de la discussion L_S
  • 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 !

L_S

XLDnaute Nouveau
Bonjour,

Je vous explique:
(N.B.:
- Tous mes classeurs ont un seul et unique onglet
- Et le nom du classeur est identique au nom de l'onglet)

J'ai un classeur nommé "TOTO" en .xlm (soit TOTO.xlm) (avec son onglet "TOTO")
et qui via une macro, se modifie en .xls
Il se nomme donc après transformation en TOTO.xlm.xls
(Cf Macro ci-dessous)
Sub Convertir_xlm_xls()

ThisWorkbook.SaveAs Filename:=ActiveWorkbook.Path & "\" & ActiveWorkbook.Name & ".xls"

End Sub

(Pour info, cette macro s'adapte quelque soit le nom du classeur)
Jusque là, ça fonctionne (Le nouveau classeur se crée mais le contenu ne suit pas)

Je souhaite donc ensuite que le contenu de TOTO en xlm vienne se copier/coller sur TOTO en xls
J'ai donc trouvé la macro ci-dessous mais qui ne fonctionne que pour le fichier TOTO
Alors que je souhaiterais que cette macro s'adapte quelque soit le nom du fichier.

Sub Macro(1)

Sheets("TOTO").Select
Sheets("TOTO").Copy Before:=Workbooks( _
"TOTO.xlm.xls").Sheets(1)
Windows("TOTO.xlm").Activate
Range("A1").Select

End Sub

(N.B.:Il y-a un débogage que je n'arrive pas à contrer sur la 2ème et 3ème ligne)

Pouvez-vous me venir en aide ?

Très cordialement.
 

Pièces jointes

Re : Comment généraliser l'action d'une macro

Bonjour à tous,

Si j'ai bien compris, essaye la macro suivante dans le classeur source.

Cela créera un autre classeur au nom de la première et unique feuille au format .xls dans le même répertoire que celui du fichier source :

Sub EnregistrerFeuilleEnClasseur()
Dim Chemin As String, Nom As String, Fichier As String
Chemin = ThisWorkbook.Path
Sheets(1).Copy
With ActiveWorkbook
Nom = Sheets(1).Name
Fichier = Chemin & "\" & Nom & ".xls"
.SaveAs Filename:=Fichier, FileFormat:=xlExcel8
.Close
End With
End Sub
 
Re : Comment généraliser l'action d'une macro

En fait rien ne se produit.

Et maintenant lorsque je souhaite ouvrir Excel pour tout autre chose, j'ai deux fichiers Excel de travail déja existant qui s'ouvre automatiquement.

J'ai donc supprimé la Macro mais ce processus s'effectue toujours.
Comment faire ?
 
Re : Comment généraliser l'action d'une macro

Bon, j'ai réussi à supprimer le processus.

En fait, j'attends une macrp qui fasse que mon fichier de base (dont leurs noms sont différents puisqu'ils sont plusieurs) se duplique en.xls et ce avec son contenu.

merci d'avance.
 
- 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

  • Question Question
Microsoft 365 Problème macro
Réponses
4
Affichages
246
Réponses
10
Affichages
548
Retour