macro pour copier un onglet en dernier et le renommer

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

janick

XLDnaute Occasionnel
Bonjour,

Je souhaiterais avoir une aide pour combiner ces deux macro ci joint

Merci d'avance

Sub onglet()
On Error GoTo finerreur
Sheets.Add
ActiveSheet.Select
ActiveSheet.Move After:=Worksheets(Worksheets.Count)
ActiveSheet.Select
Nouveaunom = Application.InputBox("Entrer le nouveau nom", "Renommer un onglet")
ActiveSheet.Name = Nouveaunom
GoTo Fin
finerreur: 'Renvoi ici si l'onglet est inexistant
MsgBox "Nom de feuille déjà existante !" 'Message si la feuille déjà existante
Application.DisplayAlerts = False
ActiveSheet.Delete
Fin:
End Sub

Sub copier()

Sheets("1er tri").Select
Sheets("1er tri").Copy After:=Sheets(7)
Sheets("1er tri (2)").Select
Sheets("1er tri (2)").Name = "jaja" ' ou un autre nom au choix
Range("C81").Select
End Sub
 
Re : macro pour copier un onglet en dernier et le renommer

Bonjour jannick

Evitons les on error goto, il sont toujours delicats à gerer

On teste deja si le nom exite

For i = i to sheets.count
if sheets(i).name = nouveaunom then
msgbox "Le nom existe deja"
exit sub
end if
next i

ensuite comme le nom n'exite pas,

Sheets.Add after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = nouveaunom
Sheets("nomdelafeuilleàcopier").Cells.Copy Destination:=Sheets(Sheets.Count).Range("A1")
 
Re : macro pour copier un onglet en dernier et le renommer

Bonjour wilfried_42,

Déja merci mais comme je ne suis pas tres calé je n'arive pas a faire fonctionner cette suite d'instructions.
ci joint pour contrôle
merci

Sub copier()

For i = i To Sheets.Count
If Sheets(i).Name = nouveaunom Then
MsgBox "Le nom existe deja"
Exit Sub
End If
Next i

'ensuite comme le nom n'exite pas,

Sheets.Add after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = nouveaunom
Sheets("nomdelafeuilleàcopier").Cells.Copy Destination:=Sheets(Sheets.Count).Range("A1")

End Sub
 
Re : macro pour copier un onglet en dernier et le renommer

re:

je precise :
Code:
Sheets("[COLOR="Red"]nomdelafeuilleàcopier[/COLOR]").Cells.Copy
Destination:=Sheets(Sheets.Count).Range("A1")

en rouge, tu dois mettre le nom de la feuille à copier

si tu ne la connais pas : en bleu

Code:
[COLOR="Blue"]anciennom = activesheet.name[/COLOR]
Sheets.Add after:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = nouveaunom
Sheets([COLOR="Blue"]anciennom[/COLOR]).Cells.Copy Destination:=Sheets(Sheets.Count).Range("A1")
 
- 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

Réponses
6
Affichages
704
Retour