Salut
Moi aussi j'ai fait des tests. Je trouvais ton problèmes intéressant. Excuses moi d'interférer Ouskel,
J'ai une feuille appeler Références qui contient un titre (Table des références) en A1 et un bouton de commande (Name : cmdAjouterRéférence, Caption : Ajouter une référence...).
J'ai aussi un UserForm nommé frmAjoutReferences (voir l'image)
Son code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Public valide As Boolean
Private Sub cmdAnnuler_Click()
valide = False
Me.Hide
End Sub
Private Sub cmdValider_Click()
If txbNomReference.Text <> "" Then
valide = True
Me.Hide
Else
'ajout d'un message dans la barre d'état de la bt de dialogue.
stbMessages.SimpleText = "Inscrivez une référence ou Annulez"
' retour du focus dans le champ texte
txbNomReference.SetFocus
End If
End Sub
Private Sub UserForm_Activate()
txbNomReference.Text = ""
stbMessages.SimpleText = ""
End Sub |
Le code du bouton cmdActiver de la feuille Références
1 2 3 4 5 6
| Private Sub cmdAjouterReference_Click()
frmAjoutReference.Show
If frmAjoutReference.valide Then
AjouterReference frmAjoutReference.txbNomReference.Text
End If
End Sub |
Et la macro qui fait le travail
1 2 3 4 5 6 7 8 9
| Public Sub AjouterReference(NomReference As String)
Dim DerniereLigne As Integer
DerniereLigne = Sheets("Références").Cells.SpecialCells(xlCellTypeLastCell).Row
Sheets.Add after:=Sheets(Worksheets.Count)
Sheets(Worksheets.Count).Name = NomReference
Sheets("Références").Activate
ActiveSheet.Hyperlinks.Add Anchor:=Cells(DerniereLigne, 1), Address:="", SubAddress:= _
NomReference & "!B7", TextToDisplay:=NomReference
End Sub |
[Edition : ajout et correction du code]
Cependant, les feuilles sont bein ajoutées mais la référnece avec l'hyperlien est toujours créée dans la même cellule...
Partager