Macro pour remplacer un Ctrl+K

Bluecross 4 Messages postés vendredi 3 juin 2016Date d'inscription 6 juin 2016 Dernière intervention - 3 juin 2016 à 14:11 - Dernière réponse : ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention
- 6 juin 2016 à 10:42
Bonjour,

Je suis dans la panade car ça fait 2 semaines que j'essaye de faire une macro pour me simplifier la vie mais je reste toujours bloquer sur le même problème.

Je dois insérer des hyperliens dans un tableau excel mais à chaque fois que je trouve quelque chose, sa ouvre une fenêtre de dialogue mais sa ne génère pas d'hyperlien. Je précise que l'hyperlien N'EST PAS FIXE.

Donc est-ce que quelqu'un pourrait m'aider a créer une macro pour insérer un hyperlien que le choisirais juste avant ??

Merci d'avance :D
Afficher la suite 

Votre réponse

7 réponses

ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - 3 juin 2016 à 17:41
0
Utile
Bonjour,
j'essaye de faire une macro pour me simplifier la vie mais je reste toujours bloquer sur le même problème

et
à chaque fois que je trouve quelque chose, sa ouvre une fenêtre de dialogue mais sa ne génère pas d'hyperlien. Je précise que l'hyperlien N'EST PAS FIXE.


je te rappelle (règles de ce forum) que tu dois montrer le code tenté.

Qu'as-tu donc tenté d'écrire, après (bien évidemment) :
- avoir ouvert ton aide VBA à la rubrique Hyperlink, objet
- puis examiné chacune des rubriques exposées en développant la sous-rubrique Membres de l'objet Hyperlink

Commenter la réponse de ucfoutu
Bluecross 4 Messages postés vendredi 3 juin 2016Date d'inscription 6 juin 2016 Dernière intervention - Modifié par Bluecross le 6/06/2016 à 08:46
0
Utile
Bonjour,

Sub Autocrea()
Sheets("Données").Select

Range("A1").Select

Dim ligne As Long
ligne = 89
Do While Not IsEmpty(Range("A" & ligne))
ligne = ligne + 1
Loop

ActiveCell(ligne).Select

Dim NomCarte As String
NomCarte = InputBox("Selection du nom de la carte", "Création d'une nouvelle carte")
ActiveCell.Value = NomCarte
ActiveCell.Offset(, 1).Select

Dim Code As String
Code = InputBox("Selection du code de la carte", "Création d'une nouvelle carte")
ActiveCell.Value = Code
ActiveCell.Offset(, 1).Select

Dim Reference As String
Reference = InputBox("Selection de la référence carte", "Création d'une nouvelle carte")
ActiveCell.Value = Reference
ActiveCell.Offset(, 1).Select

Dim Client As String
Client = InputBox("Selection du client de la carte", "Création d'une nouvelle carte")
ActiveCell.Value = Client
ActiveCell.Offset(, 1).Select

Dim Famille As String
Famille = InputBox("Selection de la famille de la carte", "Création d'une nouvelle carte")
ActiveCell.Value = Famille
ActiveCell.Offset(, 1).Select


End Sub



Voilà pour le code. Il est censé sélectionner la dernière ligne vide pour y rentrer des informations. Tout cela fonctionne cependant il me manque le programme pour créer des hyperliens automatiquement ( le fameux Ctrl+k ). Merci pour ta futur réponse ! :)
Commenter la réponse de Bluecross
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 6/06/2016 à 08:56
0
Utile
Bonjour,
je ne vois rien, dans ton code, qui tente au moins d'utiliser ce que je t'ai invité à lire dans ton aide VBA.
Je t'y invite donc à nouveau à à nous montrer ce que tu as au moins tenté d'écrire sur les bases de cette lecture.
Je te rappelle que tu as écrit plus haut :
à chaque fois que je trouve quelque chose, sa ouvre une fenêtre de dialogue mais sa ne génère pas d'hyperlien


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
Bluecross 4 Messages postés vendredi 3 juin 2016Date d'inscription 6 juin 2016 Dernière intervention - 6 juin 2016 à 09:17
0
Utile
Voici notre dernière essais AVEC l'aide VBA. Mais sa n'arrange pas notre problème.

Sub hy()
'
' hy Macro
'

'
Application.Run "'Donnée constructeur ( activer les macros ).xls'!Autocrea"
'Sa c'est pour créer une nouvelle ligne dans notre excel automatiquement c'est juste un appel d'une autre macro qui fonctionne
' C'est la que notre problème intervient avec le fameux Ctrl+K :)

ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"Gamme\AutoGamme\DEVIS%20MO%20BOITIER%20SCONV%2063025602AA%2021-12-2015%20avec%20PDC.xlsm" _
, TextToDisplay:= _
"Gamme\AutoGamme\DEVIS MO BOITIER SCONV 63025602AA 21-12-2015 avec PDC.xlsm"
' La on a choisi une adresse mais en faisant le Ctrl+K nous même. Mais on ne trouve pas comment l'intégrer directement dans le VBA qu'on à écrit avant :D

End Sub

C'est la macro qui ce rapproche le plus de ce que l'on souhaite. Mais ce n'est pas encore ça. :D
Commenter la réponse de Bluecross
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 6/06/2016 à 10:36
0
Utile
Bon,
1) je ne veux même pas commenter le code que tu as présenté plus haut. Non seulement il est fait à coups de select (à proscrire au bénéfice d'un travail direct sur les objets Excel), mais il comporte de surcroît des "étrangetés", telle celle-ci :
ActiveCell(ligne).Select !!!
2) Je fais donc volontairement l'impasse sur ces aspects (que tu as à bûcher) et ne m'en tiens qu'au remplacement de ton CTRL+K
Cette commande ouvre une boîte de dialogue, c'est tout.
Tu peux l'ouvrir par code ainsi (exemple) :
Range("F1").Select
With Application.Dialogs(xlDialogInsertHyperlink)
.Show
End With

ce qui ouvrira ta boîte de dialogue et insèrera le fichier choisi et confirmé comme hyperlien en cellule F1.


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu
Bluecross 4 Messages postés vendredi 3 juin 2016Date d'inscription 6 juin 2016 Dernière intervention - 6 juin 2016 à 10:38
0
Utile
Oui c'est ça, le fameux Ctrl+K qu'il nous fallait !! Comme quoi les programmes que tu nous as demandé avants n'étaient pas nécessaire vu que tu n'en a pas pris compte ! Donc sa aurait était gentil et plus simple de directement nous donner le code pour le Ctrl+K ^^ Au plaisir de retravailler avec toi :)
Commenter la réponse de Bluecross
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionModérateurStatut 11 avril 2018 Dernière intervention - Modifié par ucfoutu le 6/06/2016 à 10:47
0
Utile
Ben non !
1) je ne t'avais pas demandé autre chose que le code que tu avais tenté d'écrire en ce qui concernait UNIQUEMENT l'insertion d'un lyperlien
2) tu apprendras vite que j'ai un principe (presque une religion) : conduire le demandeur à pêcher, plutôt que d'attendre qu'on lui donne un poisson. C'est dans cet esprit, que je t'ai invité à lire certaines rubriques de l'aide VBA (ce que tu n'as apparemment pas su faire).
Ou tu acceptes cette manière de guider, ami, et tu recevras volontiers mon aide. Ou tu ne l'acceptes pas et ... devine.
Pour ton info : je ne me sers jamais de cette boîte de dialogue et préfère agir autrement. Je ne l'ai donc étudiée QUE pour toi (te renseigner). Tu ne trouves pas que l'un de nous deux est plus cossard que l'autre ?

Et pendant que nous y sommes : tu es ici sur un forum, qui a des règles à respecter, dont :
- la présentation de code entre balises code (ne l'oublie dorénavant pas)
- la libération (un clic sur le tag RESOLU au niveau du 1er message) de toute discussion résolue. Ne l'oublie pas non plus.

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Commenter la réponse de ucfoutu

Vous n'êtes pas encore membre ?

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

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 et codes sources.

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