Base de données

flamur1989

XLDnaute Nouveau
Bonjour à tous,

Je suis entrain de créer une base de donnée par entreprise.

Pour cela j'aurai besoin que lorsque j'ajoute un nouvel employé, c'est à dire lorsque j'ouvre une nouvelle feuille qui aura le nom de l'employé celle ci s'ajoute automatiquement à la feuille "liste".

Les noms sur cette liste servirons de liens à leur feuilles.


Merci pour vos réponses.
 

Pièces jointes

  • test.xlsx
    10 KB · Affichages: 67
  • test.xlsx
    10 KB · Affichages: 68
  • test.xlsx
    10 KB · Affichages: 73
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Base de données

Bonjour flamur,

à tester dans le code de la feuille Liste

Code:
Private Sub Worksheet_Activate()
Dim Wks As Worksheet
    For Each Wks In ThisWorkbook.Worksheets
        If Application.CountIf(ActiveSheet.Range("A:A"), Wks.Name) = 0 Then
            ActiveSheet.Range("A" & ActiveSheet.Rows.Count).End(xlUp)(2).Value = Wks.Name
        End If
    Next Wks
End Sub

ça ne gère que les ajouts, pas les suppressions...
si tu veux gérer les suppressions, reviens-nous
 

flamur1989

XLDnaute Nouveau
Re : Base de données

Salut tototiti,

Merci pour ta réponse.

Ce serait bien si cela pouvait gérer les suppressions.

Mais j'aimerai aussi qu'apparaisse automatiquement un lien sur chaque nouvelle feuille qui permet d'aller a la première feuille "liste".

Aussi, les noms des feuilles qui seront automatiquement ajoutés à la feuille "liste" soient de format lien pour permettre de se rendre sur la feuille souhaité.

Merci.
 
Dernière édition:

Chubby

XLDnaute Impliqué
Re : Base de données

Bonsoir à tous, bonsoir flamur et tototiti,

Je te propose d'affecter un lien entre ta feuille liste et les autres feuilles
Regarde le fichier joint si ça le fait.
bonne soirée
 

Pièces jointes

  • test_lien.xlsx
    12.6 KB · Affichages: 56

tototiti2008

XLDnaute Barbatruc
Re : Base de données

Bonjour flamur, Bonjour Chubby,

Ou une version mise à jour du code

Code:
Private Sub Worksheet_Activate()
Dim Wks As Worksheet
    Application.ScreenUpdating = False
    ActiveSheet.Range("A1").EntireColumn.ClearContents
    ActiveSheet.Range("A1").Value = ActiveSheet.Name
    For Each Wks In ThisWorkbook.Worksheets
        If Application.CountIf(ActiveSheet.Range("A:A"), Wks.Name) = 0 Then
            ActiveSheet.Range("A" & ActiveSheet.Rows.Count).End(xlUp)(2).Formula = "=HYPERLINK(""#'" & Wks.Name & "'!A1"",""" & Wks.Name & """)"
        End If
    Next Wks
    Application.ScreenUpdating = True
End Sub
 

flamur1989

XLDnaute Nouveau
Re : Base de données

Salut tototiti, salut chubby,

Merci pour vos réponse.

Les deux façons sont bien avec une préférence pour celle de tototiti qui affiche automatiquement le nom de la nouvelle feuille sur la feuille liste.

Chubby: Est ce que tu peux m'expliquer comment faire un signet ou lien?

Tototiti: Y a t'il une possibilité à ce que apparaisse automatiquement le lien a l'ouverture d'une nouvelle feuille vers la feuille liste?

Merci :D
 
Dernière édition:

Chubby

XLDnaute Impliqué
Re : Base de données

Bonsoir Flamur, bonsoir Tototiti et les zotres,

Pour créer le signet tu cliques droit, en bas du menu défilant "lien hypertexte", une fenêtre s'ouvre et là tu crées ton signet. Sinon, tu vas dans l'onglet "Insertion" puis dans le ruban tu vois lien hypertexte... et tu suis la même chose.
Si j'arrive à te poster une copie d'écran ce serait top.
J'espère t'avoir répondu pour t'aider.
Tototiti> merci pour ton code, je n'ai pas essayé, il faut dire que les macro et moi euh, pas top ambiance!
Quoiqu'il en soit merci le forum.
Chubby
 

Pièces jointes

  • Capture01.jpg
    Capture01.jpg
    50.1 KB · Affichages: 182
  • Capture01.jpg
    Capture01.jpg
    50.1 KB · Affichages: 177
  • Capture01.jpg
    Capture01.jpg
    50.1 KB · Affichages: 150

tototiti2008

XLDnaute Barbatruc
Re : Base de données

Bonjour flamur, Bonjour Chubby,

@flamur
Y a t'il une possibilité à ce que apparaisse automatiquement le lien a l'ouverture d'une nouvelle feuille vers la feuille liste?
A ajouter dans le code de ThisWorkbook du classeur :

Code:
Private Sub Workbook_NewSheet(ByVal Sh As Object)
    Sh.Range("A1").Formula = "=HYPERLINK(""#'Liste'!A1"",""Liste"")"
End Sub

@Chubby
merci pour ton code, je n'ai pas essayé, il faut dire que les macro et moi euh, pas top ambiance!

Si tu veux essayer, j'ai mis les 2 codes dans le classeur :
 

Pièces jointes

  • Essai.xls
    25 KB · Affichages: 47
  • Essai.xls
    25 KB · Affichages: 52
  • Essai.xls
    25 KB · Affichages: 44

Discussions similaires

Réponses
5
Affichages
143

Statistiques des forums

Discussions
312 226
Messages
2 086 413
Membres
103 202
dernier inscrit
Claire2BM