j'aurais besoin d'un petit coup de main sur un fichier excel
2 onglets avec filtres automatiques
une colonne du 1er onglet contient des numéros, qui correspondent à une liste (différente pour chaque numéro) qui elle se trouve dans le 2eme onglet sous filtre automatique également.
j'aimerai quand je clique sur le numéro 1 par exemple me retrouver avec la liste filtrée numéro 1 dans l'onglet 2.
je ne vois pas comment faire ?
Si quelqu'un à un peu de temps à perdre pour m'aider...merci beaucoup
Bizarre, chez moi ça fonctionne...
Sinon, la solution de tototiti (que je salue au passage ) semble fonctionner et est moins "contraignante" à mettre en place.
visiblement ma version de fonctionne pas non plus chez pierrotyahoo (MP)
Peut-être placer un point d'arrêt dans FollowHyperlink pour tester les valeurs des variables...
étrange, cela ne marche pas chez moi pour vos deux fichiers !
pouvez vous faire le test suivant : liberer le filtre automatique de l'onglet 2 pour que toutes les données soient visibles
et il semblerait qu'il n'y ait pas de Macro dans mon fichier excel (enfin le tien que j'ai dl), donc étrange
Outils > Macro > Macros : aucune Macro visible
Les procédures évènementielles n'apparaissent pas dans Outils-Macro-Macro
Essaye de faire ça :
Clic droit sur l'onglet de la Feuil1 - Visualiser le code
Tu devrais voir ça :
Code:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Sheets("Feuil2").Range("B2").AutoFilter Field:=1, Criteria1:=CStr(Target.Parent.Value)
End Sub
As-tu activé les macros à l'ouverture du fichier ? ou as-tu un message qui dit que les macros sont désactivées ? Quelle est ta version d'Excel ?
j'utilise Excel 2003 SP3
je n'ai pas de message pour activer ou désactiver les macros comme sur le 2007
EDIT : cela marche !!
maintenant, il faut que je sois capable de reproduire ton travail sur mon fichier excel perso...
par quoi commencer ? je ne m'y connais pas beaucoup en VB
maintenant, il faut que je sois capable de reproduire ton travail sur mon fichier excel perso...
par quoi commencer ? je ne m'y connais pas beaucoup en VB
fait un copier coller du code en Feuil1 vers la feuille qui contiendra tes liens hypertexte
à toi de remplacer éventuellement les choses qui changent, comme
Feuil2 est le nom de la feuille contenant la liste complète
B2 est la première cellule de cette liste
Puis dans la feuille qui doit contenir les liens hypertexte, tu crée les liens hypertexte (1 par 1, ou tu fais le premier puis touche F4 sur chaque cellule) sur les valeurs qui doivent filtrer... et ça devrait fonctionner
j'ai donc essayé : clic droit sur la feuille 1, copié collé du code, que je re copie dans l'emplacement de la feuille 1 pour la nouveau fichier
ensuite je remplace le Feuil2 par Feuil3 qui est la feuille ou la liste se trouve*
je remplace le B2 par A1
puis je crée le lien hypertexte mais erreur : Erreur d'exécution '9' : l'indice n'appartient pas à la selection
il me demande si je veux déboguer , et m'affiche après dans le code cette phrase en jaune surlignée : Sheets("Feuil3").Range("A2").AutoFilter Field:=1, Criteria1:=CStr(Target.Parent.Value)
je n'y arrive pas donc
la liste contient presque 5000 valeurs, cela joue peut être ?
je ne comprends pas bien ce qui cloche...
ça devrait fonctionner
Edit : un exemple avec un autre nom de feuille
@mromain : en effet, j'ai dû redéfinir le lien mais ça ne fait pas planter le VBA, il dit seulement que le lien pointe vers un endroit non valide...