Créer onglet via un menu déroulant

Jefekoi

XLDnaute Junior
Bonjour,

A partir du moment que je choisi un "texte" dans le menu déroulant j'aimerais créer une nouvelle feuille sous le même nom que j'ai sélectionné .


Si possible en VBA (MAC)

J'insiste sur la version MAC car les exemples que j'ai pu voir sur ce forum son souvent pour PC :(

Merci pour votre aide
 

Fichiers joints

job75

XLDnaute Barbatruc
Bonjour jefekoi,

Placez dans le code de la feuille :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Intersect(Target, [C2]) Is Nothing Or [C2] = "" Then Exit Sub
If IsError(Sheets(CStr([C2]))) Then
    Application.ScreenUpdating = False
    Sheets.Add After:=Sheets(Sheets.Count)
    ActiveSheet.Name = [C2]
    Application.Goto [C2]
End If
End Sub
S'il y a bug sur MAC dites-nous où.

A+
 
Dernière édition:

job75

XLDnaute Barbatruc
Alors pour voir si la macro se déclenche ajoutez une MsgBox et dites-nous :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox "Exécution"
On Error Resume Next
If Intersect(Target, [C2]) Is Nothing Or [C2] = "" Then Exit Sub
If IsError(Sheets(CStr([C2]))) Then
    Application.ScreenUpdating = False
    Sheets.Add After:=Sheets(Sheets.Count)
    ActiveSheet.Name = [C2]
    Application.Goto [C2]
End If
End Sub
 

Jefekoi

XLDnaute Junior
Alors là je ne comprend plus, j'ai fermé Excel et redémarré et là ça marche ... je l'avais pourtant déjà fermé ..

Je ne comprend pas cette différence entre MAC et PC , il devraient les rendre vraiment compatible pour le bien des clients (nous)

Merci Job75 de ton aide précieuse.
 

Fichiers joints

Discussions similaires


Haut Bas