Ne pas copier le bouton d'activation de la macro
Aimy67
-
Aimy67 Messages postés 1 Date d'inscription Statut Membre Dernière intervention -
Aimy67 Messages postés 1 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je débute avec les macros aussi je vous remercie par avance de votre indulgence et de votre aide.
J'ai un fichier Excel contenant plusieurs onglet dont un qui me permet de faire un reporting via des TCD et un graphique.
J'ai mis en place une macro me permettant de copier l'onglet de reporting dans un nouveau fichier Excel, de sélectionner les données et de les copier en tant que valeur, puis d'enregistrer mon fichier à l'emplacement souhaité.
Jusque la tout va bien.
J'ai créé un bouton me permettant de réaliser cette action. Le problème est que quand je lance ma macro cela copie également le bouton et je n'arrive pas à le supprimer autrement que manuellement.
Ci-dessous le code que j'ai fait :
Sheets("Synthèse service").Select
Sheets("Synthèse service").Copy
Range("A1:E25").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("F15").Select
Application.CutCopyMode = False
ActiveSheet.Shapes("Button1").Delete
ActiveWorkbook.SaveAs Filename:="\\srvdata\utilisateurs\egrossm\Documents\Test macro\Export service\Test 2 " & Range("B3").Value & ".xlsx" _
, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close
End Sub
Je vous remercie par avance pour votre aide.
Je débute avec les macros aussi je vous remercie par avance de votre indulgence et de votre aide.
J'ai un fichier Excel contenant plusieurs onglet dont un qui me permet de faire un reporting via des TCD et un graphique.
J'ai mis en place une macro me permettant de copier l'onglet de reporting dans un nouveau fichier Excel, de sélectionner les données et de les copier en tant que valeur, puis d'enregistrer mon fichier à l'emplacement souhaité.
Jusque la tout va bien.
J'ai créé un bouton me permettant de réaliser cette action. Le problème est que quand je lance ma macro cela copie également le bouton et je n'arrive pas à le supprimer autrement que manuellement.
Ci-dessous le code que j'ai fait :
Sheets("Synthèse service").Select
Sheets("Synthèse service").Copy
Range("A1:E25").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("F15").Select
Application.CutCopyMode = False
ActiveSheet.Shapes("Button1").Delete
ActiveWorkbook.SaveAs Filename:="\\srvdata\utilisateurs\egrossm\Documents\Test macro\Export service\Test 2 " & Range("B3").Value & ".xlsx" _
, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close
End Sub
Je vous remercie par avance pour votre aide.
A voir également:
- Ne pas copier le bouton d'activation de la macro
- Clé d'activation windows 10 - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Comment copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
- L'état actuel de votre sim ne requiert aucune activation. - Forum Free mobile
1 réponse
Bonjour,
Pour répondre, il serait plus simple de disposer de ton fichier,
débarrassé des informations confidentielles s'il y lieu.
Déposes le fichier avec des commentaires explicatifs sur
https://mon-partage.fr/
et mets le lien obtenu dans ton prochain message.
Avec VBA, il faut absolument éviter d'utiliser .Select et Selection, et si possible éviter d'utiliser le presse-papier (.
.PasteSpecial).
Par exemple :
Pour répondre, il serait plus simple de disposer de ton fichier,
débarrassé des informations confidentielles s'il y lieu.
Déposes le fichier avec des commentaires explicatifs sur
https://mon-partage.fr/
et mets le lien obtenu dans ton prochain message.
Avec VBA, il faut absolument éviter d'utiliser .Select et Selection, et si possible éviter d'utiliser le presse-papier (.
.PasteSpecial).
Par exemple :
Option Explicit Sub Test() Dim wbk As Workbook Dim wsh As Worksheet Worksheets("Synthèse service").Copy Set wbk = ActiveWorkbook Set wsh = wbk.Worksheets("Synthèse service") wsh.Range("A1:E25").Value = wsh.Range("A1:E25").Value 'et ici : wsh.Shapes("Button1").Delete mais sans le fichier ??? wbk.SaveAs Filename:="\\srvdata\utilisateurs\egrossm\Documents\Test macro\Export service\Test 2 " & _ wsh.Range("B3").Value & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False wbk.Close End Sub
Merci pour ces premiers éléments de réponses.
Ci-dessous le lien avec un fichier dont j'ai modifié les données par des données fictives.
https://mon-partage.fr/f/TXhRDLqY/
J'ai fait ma macro avec l'enregistreur automatique car je débute sur ce type de sujet.
Merci d'avance.
Dans mon véritable fichier de travail les éléments copiés sont des TCD.
Aussi quand j'essaie d'appliquer le code que vous m'avez gentiment retravaillé, j'obtiens le message d'erreur ci-dessous concernant la ligne :
wsh.Range("A1:E25").Value = wsh.Range("A1:E25").Value