J'ai une liste de client avec laquelle j'aimerais :
Que, lorsque j'ajoute manuellement un client en remplissant les infos dans la feuille LISTE (Par exemple en A5 à C5 dans mon fichier ci-joint), un lien hypertexte soit automatiquement créer en D5, lien qui pointerait vers la feuille DÉTAILS et qui copierait, lorsqu'on cliquerait sur ce lien, le code client en A5 de la feuille LISTE dans la cellule B2 de la feuille DÉTAILS;
Que les liens dans la colonne D se rafraichissent dès qu'il y a un changement sur la feuille LISTE dans l'une ou l'autre des colonnes A à C afin que je puisse modifier les clients déjà présents et que le lien soit toujours up-to-date si je change le code d'un client existant, par exemple;
Et finalement, je veux pouvoir ajouter autant de client que je le souhaite.
Ci-joint, un exemple de ce que j'essais de faire, avec le client SNOJ4567.
L'un d'entre vous a sûrement une solution pour moi, parce que vous êtes des AS !!
Voilà, avec l'événement SelectionChange de la feuille SEARCH lorsque l'on sélectionne un Code Client.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
If .Count = 1 And .Column = 4 And .Row >= 5 And .Cells(1).Value <> "" Then
Sh_Details.[C2].Value = Target.Value
Application.Goto Sh_Details.[C2]
End If
End With
End Sub
(Un tableau structuré pourrait quand même très bien convenir à ta feuille SEARCH mais ...)
Bonsoir à toutes & à tous, bonsoir @chantalc33
En transformant ta liste de client en tableau structuré ("tb_Clients") avec la fonction LIEN_HYPERTEXTE qui envoie sur la cellule nommée "Détail_CodeClient", 2 formules RECHERCHEV pour renvoyer les autres valeurs et l'événement Worksheet_SelectionChange de la feuille "Liste" pour mettre à jour le code client dans la feuille Détails :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Me.[tb_Clients[Voir fiche détaillée]]) Is Nothing Then
Sh_Détails.[Détail_CodeClient].Value = Intersect(Target.EntireRow, Me.[tb_Clients[Code client]]).Value
End If
End Sub
voir pièce jointe
Nota : le tableau structuré s'étend automatiquement lorsque tu saisis un nouveau code client en fin de liste.
Bonsoir à toutes & à tous, bonsoir @chantalc33
En transformant ta liste de client en tableau structuré ("tb_Clients") avec la fonction LIEN_HYPERTEXTE qui envoie sur la cellule nommée "Détail_CodeClient", 2 formules RECHERCHEV pour renvoyer les autres valeurs et l'événement Worksheet_SelectionChange de la feuille "Liste" pour mettre à jour le code client dans la feuille Détails :
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Me.[tb_Clients[Voir fiche détaillée]]) Is Nothing Then
Sh_Détails.[Détail_CodeClient].Value = Intersect(Target.EntireRow, Me.[tb_Clients[Code client]]).Value
End If
End Sub
voir pièce jointe
Nota : le tableau structuré s'étend automatiquement lorsque tu saisis un nouveau code client en fin de liste.
Merci pour la suggestion! Est-ce qu'il n'y aurait pas une façon de le faire sans que ce soit avec un tableau structuré? Dans la feuille DÉTAIL, je n'ai besoin que du code client car de là, je vais programmer autre chose pour aller chercher des infos ailleurs dans mon vrai fichier, à partir du code client. Je te joins le fichier excel réel sur lequel je travail. J'aurais certainement dû le mettre dès le début, malheureusement je n'y avais pas accès quand j'ai fais mon message ce matin et j'ai voulu faire un exemple rapide...
Donc, dans la feuille SEARCH, les gens tapent une recherche et les résultats s'affichent à partir de la base de données contenu dans la feuille SDC.
De là, je voudrais que le lien Hypertext qui se crée dans la colonne G de la feuille SEARCH, pointe vers la feuille DÉTAILS et que le code client lié se copie automatiquement dans la cellule C6. De la, je vais faire des RECHERCHEV pour aller chercher d'autres infos qui sont dans un autre fichier Excel.
Là où je bloque, c'est vraiment
1) La création du lien Hypertext de façon automatique qui pointerait vers la feuille DÉTAIL. J'arrive a créer un lien hypertext qui pointe vers un fichier externe, mais pas vers la feuille DÉTAIL.
2) La copie automatique du code client à partir du quel on clique sur le lien Hypertexte, dans la feuille DÉTAIL.
J'espère que ce sera plus clair... Encore désolée.
Voilà, avec l'événement SelectionChange de la feuille SEARCH lorsque l'on sélectionne un Code Client.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
If .Count = 1 And .Column = 4 And .Row >= 5 And .Cells(1).Value <> "" Then
Sh_Details.[C2].Value = Target.Value
Application.Goto Sh_Details.[C2]
End If
End With
End Sub
(Un tableau structuré pourrait quand même très bien convenir à ta feuille SEARCH mais ...)
Merci beaucoup Alain! Ça fonctionne comme un charme!! Concernant les tableaux structurés, j'imagine que je ne dois pas bien comprendre comment ça fonctionne parce que personnellement, je les déteste... :/