Appel à votre expérience (lien hypertexte)

Bonjour à tous,

Je fais appelle à votre expérience en VBA pour me dépanner, j'avoue n'avoir aucune solution à mon problème...

Le voici, j'ai un formulaire de saisie qui me permet d'entrer des documents dans une base de donnée (situé dans l'onglet "Liste de documents"). Il y a un item que je n'ai pas complété dans mon Userform, c'est le lien hypertexte.

En effet, je ne sais pas par quel moyen rapide accédé au "clic droit -> lien hypertexte" par le biais de ce formulaire...

J'ai pensé à mettre un bouton qui lancerait cette fenêtre mais bon.

capture

Peut être vous auriez une meilleure solution

Merci d'avance pour votre aide/idée

TH

Bonjour,

Voici le code que j'utilise sur un bouton de UserForm :

Private Sub Bouton_Ajouter_Lien_Click()
Dim Fichier As Variant
Fichier = Application.GetOpenFilename()
If Not Fichier = "Faux" Then
    Me.TB_Lien.Value = Fichier
End If
End Sub

Où :

  • Fichier = le chemin et le nom du fichier dont je veux définir le lien
  • TB_Lien = zone de texte qui contiendra la variable

Cordialement, Daniel

Dan42153 a écrit :

Bonjour,

Voici le code que j'utilise sur un bouton de UserForm :

Private Sub Bouton_Ajouter_Lien_Click()
Dim Fichier As Variant
Fichier = Application.GetOpenFilename()
If Not Fichier = "Faux" Then
    Me.TB_Lien.Value = Fichier
End If
End Sub

Où :

  • Fichier = le chemin et le nom du fichier dont je veux définir le lien
  • TB_Lien = zone de texte qui contiendra la variable

Cordialement, Daniel

Bonjour Daniel,

Je ne suis pas sûr d'avoir bien compris ce que je devais mettre pour remplacer "TB_Lien"...

Je dois mettre la colonne G ? La première cellule vide de la colonne G ?

capture1

Cordialement

Thomas

Voir PJ.

Il reste à "poser" le contenu de la TextBox TB_Lien dans la feuille...

Cordialement, Danie

18thomashty.xlsm (98.83 Ko)

Génial c'est encore mieux que ce que je voulais !

Petit hic, on ne peut pas cliquer sur le lien lorsqu'il est saisi via le formulaire, auriez vous une idée de pourquoi ?

Thomas

Thomas,

Honnêtement, je n'ai pas cherché à rendre réactif le lien du formulaire, mais c'est plus par manque de temps qu'autre chose.

Si la réponse vient de quelqu'un d'autre sur ce forum, je suis preneur...

Cordialement, Daniel

Merci tout de même pour l'aide.

J'espère que quelqu'un pourra apporter une solution, c'est assez frustrant de voir le lien en bleu et souligné mais ne pas pouvoir cliqué dessus...

Bien à vous

TH

Ote-moi d'un doute : sur la feuille, le lien est bien réactif ? Parce qu'il l'est chez moi...

Justement non, pour ceux que j'ai saisis manuellement, le curseur se transforme en main pour cliquer et me diriger vers le lien en question. Tandis que les liens saisies via le formulaire, le curseur se transforme en croix, comme pour sélectionner la cellule...

Peux-tu me renvoyer ton fichier ?

Il faut que tu descendes un peu plus bas, pour je ne sais quelle raison ma saisie ne s'effectue pas à la première ligne vide.......

Ci joint le fichier en PJ

Effectivement, j'avais oublié un morceau du code (sur validation du UserForm)

Voilà en PJ pour l'ajout...

Cordialement, Daniel

26thomashty.xlsm (99.94 Ko)

Ça fonctionne comme il faut !

Vous n'avez pas une idée pour mon soucis sur le positionnement des nouvelles saisies ? Du fait qu'elles ne se mettent pas à la première ligne vide.

Encore merci pour votre aide

TH

En fait, j'ai mis un petit peu de temps avant de définir une stratégie de gestion de listes optimale, et je suis arrivé à quelque chose qui me plaît à peu près, en terme d'ergonomie comme de fonctionnalités.

L'idée est la suivante :

  • sur la feuille, l'utilisateur dispose des boutons suivants : ajouter, modifier, trier, supprimer (la protection est appliquée partout, sauf sur une colonne Observations, présente dans toutes les feuilles, et modifiable sans contrainte)
  • pour ajouter, on ajoutera systématiquement sur la première ligne sous les entêtes
  • pour modifier, l'utilisateur devra sélectionner la ligne à modifier au préalable
  • pour trier, la macro triera par ordre croissant ou décroissant, selon la pertinence (dates décroissante, textes croissants, par exemple)
  • pour supprimer, on vérifiera d'abord que la ligne n'est pas utilisée ailleurs dans le classeur (exemple : le type de document)

Ensuite, la macro Ajouter va effectuer les opérations suivantes :

  • initialiser le formulaire (chargement des combos, valeurs par défaut, etc...)
  • charger le formulaire en mode Ajout

La macro Modifier :

  • initialisation du formulaire
  • affectation des contrôles du formulaire avec les valeurs de la ligne sélectionnée
  • chargement du formulaire en mode Modif

La validation s'opère sur le bouton Valider, ou bien, en Modif, sur le changement de ligne via des boutons de déplacement dans la liste :

  • écriture dans la feuille
  • déchargement du formulaire

Les filtres sont utilisables, et la recherche est déclenchée par CTRL+C, donc pas besoin de code pour ces deux fonctionnalités...

Voir un exemple sur https://forum.excel-pratique.com/applications/budget-domestique-t65910.html

Cordialement, Daniel

Je vous avoue avoir déjà vu (et enregistré dans mes dossiers) votre outil et m'en être inspiré pour réaliser le mien ! Curieuse coïncidence hehe !

Je vous aurais bien piqué 2-3 petites choses en plus, mais étant débutant dans le domaine, je me paumais un peu devant toutes ces lignes de code et n'arrivais pas à l’adapter au mien malheureusement... J'ai donc laissé tomber, je vais essayer de m'y remettre pour améliorer le mien.

Le tout est de se constituer une méthode personnelle, et de s'y tenir, car la rigueur est souvent synonyme de performance !

Exemple : en nommant systématiquement les contrôles d'un formulaire avec une charte de nommage (qui peut être personnelle, pourvu qu'elle soit appliquée), on gagne un temps fou et on évite beaucoup d'erreurs de rédaction de code.

Si mes textbox reçoivent systématiquement un nom du style TB_Libellé, je peux les nommer dans mon code sans même vérifier !

Idem pour les combos (CB_MaListe), les userforms (UF_MonFormulaire), etc...

On peut ainsi rédiger du code au kilomètre, faire des copier-coller et remplacer les éléments variables (CTR+H), etc...

Et on se prend vite au jeu, non ?

Rechercher des sujets similaires à "appel experience lien hypertexte"