XL 2010 selection d'onglet

sebbbbb

XLDnaute Impliqué
bjr
please help !

j'ai dans un fichier des onglets appelés BL1, MAN1, PLIS1
un clic sur un bouton et un autre jeu d'onglets est créé automatiquement appelé BL2, MAN2, PLIS2
un autre clic sur le même bouton créé un 3e jeu onglets appelés automatiquement BL3, MAN3, PLIS3
et ainsi de suite, autant de fois que l'on clique sur le bouton

je souhaiterai également qu'à chaque fois que l'on clic sur ce bouton, l'onglet sélectionné soit le BL* (* étant le dernier onglet appelé BL créé)

merci pour votre aide
seb
 

GALOUGALOU

XLDnaute Accro
bonjour sebbbb bonjour le fil bonjour le forum
essayer de créer une variable de type string, de stocker le nom de l'onglet bl* dans la variable , et de l'appeler en fin de procédure pour qu'il soit l'onglet actif au moment du clic sur le bouton.
un exemple à adapter
Code:
Sub créer_onglet()
Dim Og As String
Sheets.Add
Og = ActiveSheet.Name
Sheets("base").Select
MsgBox ActiveSheet.Name

Sheets(Og).Select
MsgBox ActiveSheet.Name

Sheets("base").Select

End Sub
cordialement
galougalou
 

Pièces jointes

  • ajout onglet.xlsm
    18.5 KB · Affichages: 14

fanch55

XLDnaute Barbatruc
Bonjour,
Quand vous dites créer : les nouveaux onglets sont vierges ( pas de copie à effectuer ...) :rolleyes:
Trop facile, il doit y avoir un non-dit ...??? :oops:

Pour ce faire:
créer un userform non modal avec un seul bouton qui lance la sub ci-dessous :
VB:
Option Explicit
Private Sub CommandButton1_Click()
Dim M As Integer, J As Variant, Sh As Worksheet
    M = 0
    For Each Sh In Worksheets
        If Sh.Name Like "BL*" Then
            J = Mid(Sh.Name, 3)
            M = WorksheetFunction.Max(J, M)
        End If
    Next
    If M > 0 Then
        M = M + 1
        Sheets.Add(After:=Worksheets(Worksheets.Count)).Name = "PLIS" & M
        Sheets.Add(After:=ActiveSheet).Name = "MAN" & M
        Sheets.Add(After:=ActiveSheet).Name = "BL" & M
    End If
End Sub

Nota: vous pouvez si vous le préférez, associer cette macro à un bouton sur une feuille menu ..
 

Pièces jointes

  • seb.xlsm
    24.2 KB · Affichages: 5
Dernière édition:

sebbbbb

XLDnaute Impliqué
bjr
non bien sur les onglets ne sont pas vierges
il y a des données a l'interieur
je précise que 'l'onglet BL est le premier de mon jeu de 3 onglets donc par défaut la feuille affcihée est la dernière PLIS? (? etant le numéro associé)
merci a vous
 

Eric C

XLDnaute Barbatruc
Bonsoir le forum
Bonsoir Seb, Roblochon, Galougalou & fanch55

En reprenant et modifiant le code de notre ami Galougalou (comme tu n'as pas donné ton propre code) :
VB:
Sub créer_onglet()
Dim Og As String
Sheets.Add
Og = ActiveSheet.Name
'Sheets("base").Select
'MsgBox ActiveSheet.Name

'Sheets(Og).Select
'MsgBox ActiveSheet.Name

'Sheets("base").Select
Sheets(Sheets.Count - 1).Select    <--- Ici, ta feuille active sera l'avant dernière DONC celle dernièrement créée
End Sub
Bonne soirée à toutes & à tous et continuez à vous protéger
 

Discussions similaires

Réponses
5
Affichages
194
Réponses
21
Affichages
1 K

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 811
dernier inscrit
caroline29260