RÉSOLU: Lien hypertexte; création/annulation de masse, est-ce possible?

Gen Rose

XLDnaute Impliqué
Supporter XLD
Sujet Lien hypertexte; création/annulation de masse, est-ce possible?
Version d’Excel 2003


Bonjour à tous et merci à l’avance pour votre temps.

Contexte et présentation du document
J’ai créée un document à la demande de ma directrice pour la gestion des employés.
Ils voulaient un document convivial selon leur besoins. J’ai créée une feuille nommée « Data Base » qui renseigne la feuille « Interface employé ». Cette dernière permet d’avoir un visuel qui contient toute l’information de la première mais dans une seule feuille donc, plus facile de consultation et de correction. Ce document va contenir au minimum 400 fiches d’employés.

Problème
J’ai réglé bon nombre de problèmes grâce à ce forum simplement en lisant les sujets déjà abordés (merci) mais aucun ne traite du présent problème.
J’aimerais créer en masse tous les liens qui mènent à l’ « Interface employé ». Chaque fiche à la deuxième page est séparée par 42 lignes donc vous pourrez constater que le lien 1 (Data Base) est lié à la case A1(Interface employé) et le lien 2 à la case A43 et ainsi de suite pour les 5 premières lignes dans la feuille Data base.
J’aimerais les créer d’un seul coup, sans avoir à calculer manuellement tous les A correspondants et sans attribuer manuellement chacun des liens.

De plus, j’aimerais savoir s’il est possible de tous les effacer d’un seul coup ?

Il faut excuser le fait que je suis débutante et que j’ai utilisé une seule fois le VBA mais je suis prête à travailler fort et mettre du temps donc je vais m’efforcer de bien comprendre et tester vos suggestions.

En terminant, si quelqu’un a des commentaires sur la façon dont est construit le document, il ne faut surtout pas hésiter. Oui, il y a beaucoup de mises en forme, de couleurs, de formes conditionnelles et je me doute que ce n’est pas la bonne façon d’utiliser Excel mais, ils le veulent convivial et agréable…donc! Mais n’hésitez pas à me commenter; ce sera très apprécié.

Je vous mets en p.j. le document.

Merci beaucoup à tous pour votre aide.
 

Pièces jointes

  • TEST_DBASE_LIENS.xls
    205 KB · Affichages: 97
Dernière modification par un modérateur:
C

Compte Supprimé 979

Guest
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Bonsoir Genevieve78,

Petite question si je puis me permettre : qu'elle est l'intérêt d'avoir une fiche pour chaque employé ?
Alors qu'il est possible selon le nom et prénom ou mieux, le matricule, de créer automatiquement la fiche

A+
 

Gen Rose

XLDnaute Impliqué
Supporter XLD
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Bonjour BrunoM45,

Excellente question, et je me doutais qu'il existait sûrement un moyen de créer automatiquement les fiches mais, je ne connais pas cette façon de faire. Si tu peux me pointer dans la bonne direction, je pourrais recommencer tout le travail car je suis prête à le faire! S'il y a mieux et plus facile que ce document, je suis partante.

Encore merci pour ton aide,
 
C

Compte Supprimé 979

Guest
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Re,

Je regarde donc ça et t'envoie le fichier dès que possible ;)

PS : je peux donc supprimer la colonne E et mettre un bouton à la place ?

A+
 

Gen Rose

XLDnaute Impliqué
Supporter XLD
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Re: Super!!!! Un gros merci à toi :)

***
Ceci dit, si quelqu'un d'autre arrive sur ce post, j'aimerais encore savoir si une création/annulation de masse, pour les liens hypertextes, est possible et si oui, de qu'elle façon s'y prendre; tôt ou tard, j'aurais besoin de m'en servir! merci,
 
C

Compte Supprimé 979

Guest
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Genevieve78 ;)

Voilà, c'est fait, j'ai donc :
1) supprimé toutes les fiches à part la première
2) définit un nom "BdD" pour la plage de la feuille de données
3) remplacé les formules RECHERCHEV() par INDEX()
4) Créé du code pour le bouton "Visualiser fiche"

Dans le module2 j'ai fait le code pour Créer / supprimer les liens hypertextes en masse

Si tu as d'autres questions n'hésite pas

A+
 

Pièces jointes

  • Genevieve78_DBaseV1.xls
    104 KB · Affichages: 139

Gen Rose

XLDnaute Impliqué
Supporter XLD
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

@BrunoM45

Wow, c'est absolument incroyable! Le bouton remplace les liens hypertexte et est encore plus efficace et plus rapide donc pourquoi vouloir créer 400 liens hypertextes? Aucune raison! Vraiment, je n'ai que des éloges pour l'aide que tu m'apportes et c'est très sincèrement apprécié. Je savais que j'étais au bon endroit!

Je me rends compte que je ne connais pas beaucoup Excel en ce moment et oui, j'ai une seule question:

-Je cherche à voir comment tu as créée ce bouton et je ne vois rien dans le VBA...merci de m'éclairer à nouveau car je veux pouvoir reproduire ce système. En attendant, je vais chercher sur le forum sur la création et gestion des boutons.

Encore merci Bruno,

@Tous: La question est résolue :)
 
Dernière modification par un modérateur:
C

Compte Supprimé 979

Guest
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Coucou Geneviève78

Je viens de m'apercevoir que tu es une "cousine" ;) quel temps fait-il à Montréal ?

Pour la création du bouton, rien de plus simple, faut-il encore le savoir :D
1) J'insère une forme automatique : rectangle avec coin arrondi
ScreenShot062.jpg

2) Clique droit sur l'objet pour lui affecter une macro
ScreenShot063.jpg

3) Je m'occupe ensuite de l'embellissement
Clique droit -> Format de la forme automatique
Le secret ... chuuuttt .... est de lui appliquer une texture de remplissage
En général je choisi, bicolore en dégradé horizontale, il reste à choisir les 2 couleurs
ScreenShot064.jpg

4) dernière petite touche, j'applique à l'objet un ombrage style bouton
ScreenShot065.jpg

Voili, voilà ... en espérant avoir été assez clair ;)

Au plaisir
 

Pièces jointes

  • ScreenShot062.jpg
    ScreenShot062.jpg
    34.1 KB · Affichages: 194
  • ScreenShot062.jpg
    ScreenShot062.jpg
    34.1 KB · Affichages: 186
  • ScreenShot063.jpg
    ScreenShot063.jpg
    21 KB · Affichages: 188
  • ScreenShot063.jpg
    ScreenShot063.jpg
    21 KB · Affichages: 187
  • ScreenShot065.jpg
    ScreenShot065.jpg
    11.7 KB · Affichages: 141
  • ScreenShot065.jpg
    ScreenShot065.jpg
    11.7 KB · Affichages: 153
Dernière modification par un modérateur:

Gen Rose

XLDnaute Impliqué
Supporter XLD
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Je suis tombé sur une perle (oui, toi!).
Tu es vraiment très gentil de prendre le temps de m'aider ainsi et avec autant de claireté.
Si jamais tu passes à Montréal, viens me faire "coucou" ici! :D

Maintenant, il me reste une question concernant la formule; avant, le chiffre de la case A1(Interface employé) se référait à la colonne E(Data Base) comprenant le chiffre correspondant. Je vois que le chiffre en A1 change lorsqu'une nouvelle fiche est générée et je comprend que le bouton remplace l'ancienne colonne E qui n'est plus là. Donc ma question est; qu'elles sont les étapes de création de cette macro particulière?

Un gros merci à nouveau et juste pour te dire ici, à Montréal, c'est de la pluie depuis hier mais c'est parfait; cela va nettoyer et drainer le sol. Un super ménage du printemps et le soleil ce week-end! :cool:
 
Dernière modification par un modérateur:
C

Compte Supprimé 979

Guest
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Re,

Je suis tombé sur une perle (oui, toi!).
Tu es vraiment très gentil de prendre le temps de m'aider ainsi et avec autant de claireté.
Merci, merci :eek:

Si jamais tu passes à Montréal, viens me faire "coucou" ici!

Je n'y manquerais pas ... c'est juste un peu loin :D

Pour voir le code il faut aller dans l'éditeur VBA (ALT+F11)

Mon code est très simple
Code:
Sub VisualiserFiche()  ' Récupère le numéro de ligne sur laquelle l'utilisateur se trouve
  Lig = Selection.Row
  ' Si on ne se trouve pas dans le tableau
  If Lig <= 3 Then
    MsgBox "Merci de sélectionner la ligne de la fiche à visualiser"
    Exit Sub
  End If
  ' Inscrire le numéro de la ligne dans l'interface
  With Sheets("Interface employé")
    .Range("A1").Value = Lig - 3
    .Activate
  End With
End Sub
Il ne fait qu'inscrire le numéro de ligne sur laquelle se trouve l'utilisateur - 3 (lignes d'entête)

Ensuite les formules INDEX() font le reste

INDEX(matrice, no_lig, [no_col])
La syntaxe de la fonction INDEX contient les arguments (argument : valeur qui fournit des informations à une action, un événement, une méthode, une propriété, une fonction ou une procédure.) suivants :
  • matrice Obligatoire. Représente une plage de cellules ou une constante matricielle.
    • Si l’argument matrice contient une seule ligne ou colonne, l’argument no_lig ou no_col est facultatif.
    • Si l’argument matrice comporte plusieurs lignes et plusieurs colonnes et que seul l’argument no_lig ou no_col est utilisé, la fonction INDEX renvoie une matrice des valeurs de la ligne ou de la colonne entière de la matrice.
  • no_lig Obligatoire. Sélectionne la ligne de la matrice dont une valeur doit être renvoyée. Si l’argument no_lig n’est pas spécifié, l’argument no_col est obligatoire.
  • no_col Facultatif. Sélectionne la colonne de la matrice dont une valeur doit être renvoyée. Si l’argument no_col n’est pas spécifié, l’argument no_lig est obligatoire.
​Au plaisir ;)
 

Gen Rose

XLDnaute Impliqué
Supporter XLD
Re : Lien hypertexte; création/annulation de masse, est-ce possible?

Re,

Merci pour ton aide dans ce projet; j'ai maintenant beaucoup à réviser et comprendre (et très heureuse de le faire!).

Je vais tenter de reproduire ce fichier à partir de 0 dans un nouveau classeur afin d'être certaine d'assimiler entièrement ce projet.

Et Bruno, le plaisir est pour moi!
À + ;)
 

Discussions similaires

Réponses
5
Affichages
215
Réponses
7
Affichages
481

Statistiques des forums

Discussions
312 248
Messages
2 086 596
Membres
103 252
dernier inscrit
Ersar