Insérer feuille X+1

fileofish

XLDnaute Occasionnel
Bonjour à tous !

Pouvez vous svp me donner un petit coup de main
J'ai une feuille nommée P0
J'aurais souhaité faire une macro qui me crée : une nouvelle feuille P1, si je relance la macro P2, et ainsi de suite.

Encore merci d'avance
Philippe
 

pierrejean

XLDnaute Barbatruc
Re : Insérer feuille X+1

Bonjour fileofish

A tester:

Code:
Sub newfeuil()
Max = 0
For Each sh In Sheets
 If Left(sh.Name, 1) = "P" Then
   num = CInt(Replace(sh.Name, "P", ""))
   If num > Max Then Max = num
 End If
Next
Sheets.Add.Name = "P" & Max + 1
End Sub
 

pierrejean

XLDnaute Barbatruc
Re : Insérer feuille X+1

Re

Code:
Sub newfeuil()
Max = 0
For Each sh In Sheets
 If Left(sh.Name, 1) = "P" Then
   num = CInt(Replace(sh.Name, "P", ""))
   If num > Max Then Max = num
 End If
Next
Sheets.Add.Name = "P" & Max + 1
Sheets("P0").Cells.Copy Destination:=ActiveSheet.Range("A1")
End Sub
 

fileofish

XLDnaute Occasionnel
Re : Insérer feuille X+1

Bonsoir le Forum, Pierre Jean,
Désolé de te solliciter de nouveau mais je souhaitais savoir si il était possible de placer cette nouvelle feuille créée (P3 par exemple) juste après la feuille P2. Car pour le moment la nouvelle feuille créee se met en 1ère position
Encore merci à tous pour le temps que vous nous consacrez à nous novices

Philippe
 

ninbihan

XLDnaute Impliqué
Re : Insérer feuille X+1

Bonsoir à tous,

En l'absence de PJ je me permets...

Code:
Sub newfeuil()
 Max = 0
 For Each sh In Sheets
  If Left(sh.Name, 1) = "P" Then
    num = CInt(Replace(sh.Name, "P", ""))
    If num > Max Then Max = num
  End If
 Next
 Sheets.Add after:=Sheets("P" & Max)
 ActiveSheet.Name = "P" & Max + 1
 Sheets("P0").Cells.Copy Destination:=ActiveSheet.Range("A1")
 End Sub

Ninbihan
 

Discussions similaires

Réponses
1
Affichages
219

Statistiques des forums

Discussions
312 216
Messages
2 086 348
Membres
103 194
dernier inscrit
rtison