XL 2021 Créer un lien hypertexte vers un onglet avec nom d'onglet variable

Julieneymery

XLDnaute Nouveau
Bonjour,

Je souhaite créer un classeur bon de commande
Su l'onglet "Tableau de Bord"
En appuyant sur le bouton "Nouveau bon", un nouveau bon ce crée, le numéro de bon s'ajoute à la dernière ligne du tableau dans la colonne "Numero_BC"
Jusque là j'y suis arrivé
Je voudrais que le numéro généré dans le tableau devienne un lien vers l'onglet.
J'ai vue plusieurs post sur le sujet mais je n'arrive pas à adapter les codes à ce cas de figure

Si quelqu'un a une solution...

Merci pour votre aide toujours précieuse
 

Pièces jointes

  • Proposition Bon de commande FCR38 V220124 - Copie.xlsm
    38.1 KB · Affichages: 5
Solution
@Julieneymery

Je te propose ce fichier

Remarques :
1) Je te laisses supprimer la feuille "Z" et le module1 qui sont inutiles dans cette version
2) Je suis parti sur le principe que tu n'as jamais plus de 100 bons de commande par mois si tu en as plus je modifierais le code (Si plus indique moi le volume max)

3) 100 bons de commande ==> 100 feuilles c'est vite ingérable et indigeste !!!! o_O 🤔
Perso, ma logique serait de stocker juste dans une feuille archive les bons de commande dans une BDD et quand tu en as besoin d'aller chercher le bon de commande X (archivé) qui se trouve dans la BDD (ta feuille archive) et de le visualiser uniquement à ce...

Phil69970

XLDnaute Barbatruc
Bonjour @Julieneymery

Dans ce fil il y a une demande identique à la tienne. (Tu adaptes le nom du TS )


Remarque :
==> 3 Tableaux structurés pour gérer juste le N° de bon c'est un peu beaucoup non ? o_O
Il y a plus simple il me semble ..... ;)
 

Julieneymery

XLDnaute Nouveau
Bonjour Phil,

Merci pour votre réponsse, j'ai essayé d'adapter le code sans succé, voici la réponsse d'excel:
code.jpg

Avez vous une piste sur cette erreur ?
Bien cordialement
 

Phil69970

XLDnaute Barbatruc
@Julieneymery

Je te propose ce fichier

Remarques :
1) Je te laisses supprimer la feuille "Z" et le module1 qui sont inutiles dans cette version
2) Je suis parti sur le principe que tu n'as jamais plus de 100 bons de commande par mois si tu en as plus je modifierais le code (Si plus indique moi le volume max)

3) 100 bons de commande ==> 100 feuilles c'est vite ingérable et indigeste !!!! o_O 🤔
Perso, ma logique serait de stocker juste dans une feuille archive les bons de commande dans une BDD et quand tu en as besoin d'aller chercher le bon de commande X (archivé) qui se trouve dans la BDD (ta feuille archive) et de le visualiser uniquement à ce moment là.

4) Je gère le du bon de commande avec juste 1 cellule ..... ;)
Le bon de commande à ce format
==> C2024-01-01
==> Le C de bon de Commande
==> 2024 ==> l’année en cours (calcul automatique change chaque année)
==> 01 ==> le mois en cours (calcul automatique change chaque mois)
==> 01 à 100 ==> le N° d'incrémentation (calcul automatique revient à 01 chaque mois)
Pourquoi le C car si tu fait des devis tu peux voir facilement la liste des devis, factures ou bon de commande.
D ==> devis
F ==> facture
etc .....

Merci de ton retour
 

Pièces jointes

  • Création onglets Bon Commande et et lien hyperTexte V1.xlsm
    39.7 KB · Affichages: 4

job75

XLDnaute Barbatruc
Bonjour Julieneymery, Phil69970, le forum,

Voyez le fichier joint et cette macro :
VB:
Sub Nouveau_Bon()
Dim x$, c As Range
x = Format(Date, "yyyymm")
If IsError([Nom]) Then
    ThisWorkbook.Names.Add "Nom", x & "001" 'nom défini
Else
    If x = Left([Nom], 6) Then
        ThisWorkbook.Names.Add "Nom", x & Format(Right([Nom], 3) + 1, "000")
    Else
        ThisWorkbook.Names.Add "Nom", x & "001"
    End If
End If
Application.ScreenUpdating = False
With Sheets("Base")
    .[C8] = [Nom]
    .Copy After:=Sheets(Sheets.Count)
    Sheets(Sheets.Count).Name = [Nom] 'renomme la feuille
    With [T_Num_Bc] 'tableau structuré
        Set c = IIf(.Cells(1) = "", .Cells(1), .Cells(.Rows.Count + 1, 1))
    End With
    c = [Nom]
    c(1, 2) = Application.Max(.[J:J]) 'TOTAL
End With
c.Parent.Hyperlinks.Add c, "", c & "!A1", TextToDisplay:=c.Text 'lien hypertexte
Sheets("Tableau de bord").Activate
End Sub
Avec le nom défini Nom il n'y a plus besoin de la feuille "z".

A+
 

Pièces jointes

  • Proposition Bon de commande FCR38 V220124 - Copie.xlsm
    35.1 KB · Affichages: 10

Discussions similaires

Réponses
21
Affichages
1 K

Statistiques des forums

Discussions
312 206
Messages
2 086 222
Membres
103 158
dernier inscrit
laufin