Insérer une nouvelle feuille à la fin

Quand je clique sur nouvelle feuille, comment faire pour que celle-ci s'ajoute automatiquement en dernier ?

A mettre dans un module standard de ton perso.xls :

Declare Function GetKeyState _     
Lib "user32" (ByVal nVirtKey As Long) As Integer  
Public Const VK_SHIFT = &H10    

sub CreeBoutonFeuille()
  On Error Resume Next
  Set newBtn = Application.CommandBars("Standard").Controls. _
         Add(Type:=msoControlButton, before:=3)
  With newBtn
    .Name = "FeuillePlus"
    .TooltipText = "Nouvelle feuille (insertion spéciale)"
    .FaceId = 136
    .OnAction = "DoubleAction"
    .Visible = True
  End With
 end sub
sub DoubleAction()
  Sheets.Add
  If GetKeyState(VK_SHIFT) < 0 Then
    ActiveSheet.Move After:=Worksheets(ActiveSheet.Index + 1)
  Else
    ActiveSheet.Move After:=Worksheets(Sheets.count)
  End If
 end sub

et, à ce moment-là, tu as un bouton dans la BO de ton classeur : une jolie flèche verte mais que tu peux changer en modifiant le FaceId

Auteur :

Mots clefs associés à cette page : , , , ,