Signaler

Lien hypertexte dans VBA [Résolu]

Posez votre question f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - Dernière réponse le 19 oct. 2016 à 10:44
Bonjour à tous!

Voilà, je suis assez nul en programmation VBA. J'aimerais vous demander un service. J'utilise VBA 7.1

Je voulais créer une formulaire avec VBA pour Excel, pour mettre en place une base de données des candidats à une offre d'emploi. Dans les colonnes il y a le Référence, Nom, Prénom, Adresse, Age, Sexe, Diplôme, jusque là il n'y a pas de problème, mais mon problème c'est sur le dernier colonne qui est un lien pour ouvrir le CV qui se situe dans une répértiore de mon disque dur.

1er option : (qui est l'idéal)

Renommer les CV comme les références (colonne A) et de créer une macro pour chercher automatiquement le CV dans le répertoire à partir de du référence.

2ème option :

Quand je rempli le formulaire, je clic sur un bouton pour chercher le fichier contenant le CV dans le répertoire, Et après de marquer ce lien dans le tableau pour que je puisse cliquer dessus pour ouvrir le fichier.

Je penses être précis sur mon problème.

Merci d'avance.
Afficher la suite 
Utile
+0
moins plus
Bonjour,

Avec la "2ème option :", si ton CV est dans TextBox1, cela devrait fonctionner avec cette procedure :
Private Sub TextBox1_Enter()
With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .Show
        If .SelectedItems.Count = 1 Then TextBox1 = .SelectedItems(1)
End With
End Sub

gbinforme 12913Messages postés lundi 18 octobre 2004Date d'inscription ContributeurStatut 8 décembre 2016 Dernière intervention - 17 oct. 2016 à 18:08
Aucune importance, la procédure parcours ton disque comme l'explorateur et tu peux préciser la position de départ :
Private Sub TextBox1_Enter()
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False
.InitialFileName = "E:\CV\"
.Show
If .SelectedItems.Count = 1 Then TextBox1 = .SelectedItems(1)
End With
End Sub
Répondre
f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - 17 oct. 2016 à 20:32
Merci gbinforme, ça a marché jusqu'à l'ouverture du répertoire. Maintenant ce qui reste à faire, c'est comment mettre ce lien sur le tableau Excel dans la colonne "lien".

C'est à dire qu'à chaque enregistrement (d'un CV) dans une formulaire je puisse mettre un lien pour ouvrir le CV (fichier).

L'objectif final est que je puisse filtrer par exemple les candidats qui ont le diplôme de licence, une fois que le filtre est établi, je clic sur un lien pour ouvrir le CV d'un candidat.

C'est un peu compliqué, mais j'espère avoir suffisamment expliqué mon problème.
Répondre
gbinforme 12913Messages postés lundi 18 octobre 2004Date d'inscription ContributeurStatut 8 décembre 2016 Dernière intervention - 17 oct. 2016 à 21:43
Bonsoir,

Lorsque tu valides ton formulaire, pour enregistrer en lien le fichier que tu as choisis tu peux mettre cette instruction :
ActiveSheet.Hyperlinks.Add Anchor:=Cells(lig, "H"), Address:= _
        TextBox1.Value, TextToDisplay:= _
        Mid(TextBox1.Value, InStrRev(TextBox1.Value, "\") + 1)
Tu remplaces évidemment "lig" par ta variable et "TextBox1" par le nom de ta textbox et éventuellement "ActiveSheet" par le nom de ta feuille "Sheets("mafeuille")".
Répondre
f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - 18 oct. 2016 à 17:17
Bonjour,
Encore merci beaucoup pour ton aide. Je vais essayer et ne manquerai pas de revenir ver toi.
Répondre
f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - 19 oct. 2016 à 09:59
Merci beaucoup gbinforme ça marche nickel. Tu es un génie!!!!
Répondre
Ajouter un commentaire
Utile
+0
moins plus
Bonjour,

Pourquoi se compliquer la vie. La solution tu l'as donné dans ton titre Lien hypertexte.

mais mon problème c'est sur le dernier colonne qui est un lien pour ouvrir le CV qui se situe dans une répértiore de mon disque dur.

c'est là que tu mets ton lien hypertexte.
f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - 17 oct. 2016 à 15:52
Merci pour ta réponse cs_Le Pivert. En fait, si je n'utilise pas une formulaire je peux mettre directement le lien dans le tableau. Ce qui n'est pas évident pour plus de 2 000 CV. C'est pour cela que je cherche un moyen de faire figurer le lien dans le tableau par l'intermédiaire d'une formulaire.
Une formulaire classique n'est pas capable de le faire, je suis obliger d'utiliser une formulaire personnalisée.
Répondre
cs_Le Pivert 4097Messages postés jeudi 13 septembre 2007Date d'inscription ContributeurStatut 8 décembre 2016 Dernière intervention - 17 oct. 2016 à 18:39
Si tes CV sont dans le même répertoire et qu'ils sont au même nom que celui dans la colonne. Tu peux faire cela sans formulaire, juste en cliquant sur le nom saisi sur la feuille.
A voir?
Répondre
f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - 18 oct. 2016 à 17:31
Bonjour,
Merci pour ton aide. C'est ce que je pensais être le mieux, mais le problème c'est que je suis obliger d'écrire un programme pour le faire alors que je suis assez nul en programmation :(
Répondre
cs_Le Pivert 4097Messages postés jeudi 13 septembre 2007Date d'inscription ContributeurStatut 8 décembre 2016 Dernière intervention - 18 oct. 2016 à 17:40
Il faut juste m'indiquer la colonne où ce trouve les noms qui correspondent a ceux de ton dossier de CV. Ensuite me dire de quelle extension sont tes fichiers CV. Je te fait un classeur exemple où il n'y aura qu'a copier quelque lignes sur ton classeur, ce n'est pas très compliqué. Il suffira ensuite que tu mettes ton classeur dans le même dossier que tes CV.

@+
Répondre
Ajouter un commentaire
Utile
+0
moins plus
Voici un exemple, il suffit de dezipper:

http://www.cjoint.com/c/FJsp3XqkLcQ
f1solution 9Messages postés dimanche 16 octobre 2016Date d'inscription 19 octobre 2016 Dernière intervention - 19 oct. 2016 à 10:07
Bonjour,
Merci beaucoup, ça a marché. J'ai le choix entre celui de gbinforme et le tien.
Tu es un génie.
Répondre
Ajouter un commentaire
Utile
+0
moins plus
Bonjour f1solution, cs_Le Pivert,

"Abondance de bien ne nuit pas" ;-)

Choisit la solution qui te convient car il n'y a que celle-là qui te soit adaptée.

Pour la suite, tu sauras que les solutions sont multiples.

Bonne continuation.
Ajouter un commentaire

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !