Bonjour à tous
Logiciel utilisé: excel 2007
Je voudrais lorsque j'appui sur un bouton "annulé" dans une "Userform" qu'il supprime la feuille que je vien de copier.
Est ce possible?
Merci d'avance.![]()
Bonjour à tous
Logiciel utilisé: excel 2007
Je voudrais lorsque j'appui sur un bouton "annulé" dans une "Userform" qu'il supprime la feuille que je vien de copier.
Est ce possible?
Merci d'avance.![]()
Bonjour à tous
Bonjour chrnoe
Ne sachant pas comment tu "copies" ta feuille, voici un exemple pour créer et supprimer :tu adaptes et tu nous dis
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Sub ajoute_feuille() Sheets.Add ActiveSheet.Name = "nouvelle_feuille" End Sub Sub supprime_feuille() Sheets("nouvelle_feuille").Delete End Sub
Eric
Bonjour,
Exusez moi je n'ai pas été assez clair
Voici le code de copie:
ensuite ce que je voudrais c'est avoir un boutton "annulé" dans le UserForm qui supprimera la copie de la feuil3.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Private sub CommandButton3_Click() With Application.ThisWorkbook .sheets(feuil3").Copy, .sheets(.Sheets.Count) End With Userform1.Show End Sub
Est ce possible?
Merci encore![]()
Re
D'après ce que j'ai pu voir, le code crée un fichier avec une copie de la "Feuil3". Est ce vraiment ce que tu veux faire ? ne serait-ce pas plutôt créer une copie de la "Feuil3" dans le classeur actif ? si oui, teste ceci :Pour être certain de supprimer le bon objet, ..... je préfère le nommer d'où :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Sub ajout() 'ajoute une feuille dans le classeur actif With ThisWorkbook.Sheets("Feuil3") .Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = "nouvelle_feuille" 'nomme la feuille nouvellement créée. End With End Sub Sub CommandButton4_Click() 'code du bouton 4 Sheets("nouvelle_feuille").Delete 'supprime la feuille "nouvelle_feuille" dans le classeur actif End SubA+
Code : Sélectionner tout - Visualiser dans une fenêtre à part ActiveSheet.Name = "nouvelle_feuille" 'nomme la feuille nouvellement créée.
Eric
Bonjour,
Si sur votre Userform vous avez créé un bouton "Commandbutton4" (par exemple) mais il vaudrait mieux le renommer, toujours par exemple "Cmd_supfeuil" vous pouvez utiliser dans le code de ce Userform :
Il vaudrait mieux prévoir que ce bouton ne soit pas accessible tant que vous n'avez pas cliqué sur "CommandButton3" par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Cmd_supfeuil_Click() Application.DisplayAlerts = False With Application.ThisWorkbook .Sheets(.Sheets.Count).Delete End With Application.DisplayAlerts = True End Sub
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Private Sub Userform1_Initialize() Cmd_supfeuil.Visible = false
et ensuite dans la procédure :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Private Sub Userform1_Initialize() Cmd_supfeuil.Enabled = false
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Private sub CommandButton3_Click() Cmd_supfeuil.Visible = True
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Private sub CommandButton3_Click() Cmd_supfeuil.Enabled = True
Salut
tu peux aussi rajouter.
Ce la évite le message d'excel de confirmation de suppression de ta feuille
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub CommandButton4_Click() 'code du bouton 4 Application.DisplayAlerts = False Sheets("nouvelle_feuille").Delete Application.DisplayAlerts = True End Sub
Bonjour Herod1983,
C'est ce que j'ai déjà indiqué dans ma réponse, sauf que j'en ai profité pour dire quà mon avis, il est plus clair de donner des noms "parlants" aux objets plutôt que de conserver les noms par défaut, et j'ai donc mis "Cmd_supfeuil" à titre d'exemple au lieu de "CommandButton4".
Salut jacques_jean
Désolé
J'ai remarqué ma co.... seulement après, oui renommer les objets ole est assez intéressant. A part si on veut faire une boucle sur chaque numéro des objets et ainsi affiner son tri, parenthèses à part, chacun fait son code à sa manière, c'est cela je pense qui fait l'originalité de chaque programme.
Désolé encore
a+
Partager