J'ai effectué la démarche sauf que quand je copie colle la feuille sur la feuille source j'ai toujours le bouton.Bonjour,
Bon, on n'aura pas vu ton code, mais...
Clic droit sur le bouton, "Format de contrôle"
Regarde la pièce jointe 1158395
Bonne journée
Sheets("CR DE VISITE").Copy After:=Sheets(2)
ActiveSheet.Shapes("Button 1").Delete
Désolé mais je suis novice sur le sujet. J'ai bien ajouté la ligne mais j'ai toujours la création d'un bouton supplémentaireRe-,
Rajoute cette ligne à la suite du .Copy :
VB:Sheets("CR DE VISITE").Copy After:=Sheets(2) ActiveSheet.Shapes("Button 1").Delete
Bien que la boucle For Each fait bien le boulot demandé....
PS, pense à mettre tes codes entre balises </>
Regarde la pièce jointe 1158401
Sub dupliquerfeuille()
Dim Nom As String
Dim Obj As Object
Nom = Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, ".")) & "pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & Nom, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=True, OpenAfterPublish:= _
False
Set OlApp = CreateObject("Outlook.application")
Set m = OlApp.CreateItem(0)
With m
.Attachments.Add ActiveWorkbook.Path & "\" & Nom
.Display
End With
Sheets("CR DE VISITE").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
For Each Obj In .DrawingObjects
Obj.Delete ' suppression des boutons , checkboxs..etc ...
Next Obj
.Name = Format(Date, "dd-mm-yyyy")
End With
End Sub
Bonjour @Jefflet, bhbh,Bonjour,
Je rencontre toujours le problème sur le fichier.
Lorsque je lance la macro, j'ai un deuxième bouton qui apparait malgré vos suggestions cela ne fonctionne pas.
Pourriez-vous m'aider ?
Merci à vous,
For Each Obj In Sheets("CR DE VISITE").DrawingObjects
If Obj.Name <> "Button 4" Then Obj.Delete
Next
Bonjour,Merci beaucoup pour votre aide et vos conseils !
Tout fonctionne parfaitement.
Ma dernière demande :
Ma feuille est protégée afin d'éviter les modifications.
Je souhaiterai ajouter ceci dans la macro mais cela ne fonctionne pas :
Sub MacroavecfeuilleProtect()
ActiveSheet.Unprotect "lemotdepasse"
'Placez ici vos instructions
ActiveSheet.Protect "lemotdepasse", True, True, True
End Sub
Merci à vous
ThisWorkBook.Worksheets("lafeuillesurlaquelleagitcettemacro").UnProtect "lebonmotdepasse"
ThisWorkBook.Worksheets("lafeuillesurlaquelleagitcettemacro").Protect "lebonmotdepasse"
Merci pour l'aide.
Je suis désolé mais pas un expert comme vous le voyez.
Pourriez-vous m'intégrer les éléments dans le code ?
Merci à vous
Sub dupliquerfeuille()
Dim Nom As String
Dim Obj As Object
Nom = Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, ".")) & "pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & Nom, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=True, OpenAfterPublish:= _
False
Set OlApp = CreateObject("Outlook.application")
Set m = OlApp.CreateItem(0)
With m
.Attachments.Add ActiveWorkbook.Path & "\" & Nom
.Display
End With
Sheets("CR DE VISITE").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
For Each Obj In .DrawingObjects
Obj.Delete ' suppression des boutons , checkboxs..etc ...
Next Obj
.Name = Format(Date, "dd-mm-yyyy")
End With
End Sub
Sub dupliquerfeuille()
Dim Nom As String
Dim Obj As Object
Nom = Left(ActiveWorkbook.Name, InStrRev(ActiveWorkbook.Name, ".")) & "pdf"
ActiveSheet. UnProtect "motdepasse" 'si la feuille active est protégée
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "\" & Nom, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=True, OpenAfterPublish:= _
False
Set OlApp = CreateObject("Outlook.application")
Set m = OlApp.CreateItem(0)
With m
.Attachments.Add ActiveWorkbook.Path & "\" & Nom
.Display
End With
Sheets("CR DE VISITE").UnProtect "motdepasse" 'si la feuille "CR DE VISITE" est protégée'
Sheets("CR DE VISITE").Copy After:=Sheets(Sheets.Count)
With ActiveSheet
For Each Obj In .DrawingObjects
Obj.Delete ' suppression des boutons , checkboxs..etc ...
Next Obj
.Name = Format(Date, "dd-mm-yyyy")
End With
Sheets("CR DE VISITE").Protect "motdepasse"
activesheet.Protect "motdepasse"
End Sub