> Tous les forums > Forum Bureautique
 Créer un lien hypertexte vbaSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
patton
  Posté le 12/08/2014 @ 13:06 
Aller en bas de la page 
Petit astucien

Bonjour à tous!!!

Voilà, je me heurte à un petit souci :

J'enregistre un fichier Excel sous un nom (disons toto dans le dossier titi) dans une première procédure.

Je l'enregistre dans une variable :

fName = Application.GetSaveAsFilename

Je voudrais récupérer ce nom pour l'utiliser dans une deuxième procédure pour créer un lien hypertexte vers ce fichier.

Merci à tous!!!

Publicité
ferrand
 Posté le 12/08/2014 à 15:20 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

Précise ce que tu veux faire ! ?

Classeur qui contient la procédure - Classeur nommé - Classeur qui accueille lien ... ??

Ta variable doit être niveau module, le cas échéant publique, pour récupérer sont contenu dans une autre procédure.

patton
 Posté le 12/08/2014 à 15:29 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

En fait, je fait un copier / coller de certaines cellules d'un premier classeur (celui qui est enregistré dans ma variable) vers un deuxième classeur

Windows("Classeur1").Activate

Range("D19").Select

Application.CutCopyMode = False

Selection.Copy

Windows("Classeur2").Activate

Range("B32").Select

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _

False, Transpose:=False

Windows("Classeur1").Activate

Application.CutCopyMode = False

Range("D11").Select

Selection.Copy

Windows("Classeur2").Activate

Range("C32").Select

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _

False, Transpose:=False

etc......

ferrand
 Posté le 12/08/2014 à 15:49 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Ça du code enregistré, qui mériterait d'être réécrit, mais sans rapport avec un quelconque lien hypertexte ?

patton
 Posté le 12/08/2014 à 15:56 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

j'ai utilisé l'enregistreur car je suis une truffe en vba ...
Comment faire si je souhaite que "C32" contienne en plus le lien hypertexte...
Si la ligne n'y est pas c'est parce que je ne sais pas comment l'écrire

ferrand
 Posté le 12/08/2014 à 17:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Exemple de syntaxe :

ActiveSheet.Hyperlinks.Add Range("C32"), "E:\Documents\Classeur1.xls"

patton
 Posté le 13/08/2014 à 08:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
ferrand a écrit :

Exemple de syntaxe :

ActiveSheet.Hyperlinks.Add Range("C32"), "E:\Documents\Classeur1.xls"

Déjà je progresse en comprenant la syntaxe.
Mais ton exemple est OK avec un lien entré en dur.

Quid de ma variable?????

patton
 Posté le 13/08/2014 à 09:56 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Ca marche!!
J'ai mis la variable en global

Comme quoi les solutions simples ne sautent pas toujours aux yeux

Merci encore

ferrand
 Posté le 13/08/2014 à 10:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Déjà je progresse en comprenant la syntaxe.

Pour simplifier ton code enregistré, exemple : dans une séquence telle que :

Windows("Classeur1").Activate
Range("D19").Select
Application.CutCopyMode = False
Selection.Copy
Windows("Classeur2").Activate
Range("B32").Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

VBA n'a nul besoin d'activer ou sélectionner pour mener à terme une action (sauf bien sûr si l'action est justement de sélectionner...). Au contraire, cela ralentit l'exécution. Ce code résulte du fait que c'est chaque mouvement de l'utilisateur qui est enregistré, et de surcroît l'enregistreur reproduit les valeurs par défaut des arguments, ce qui alourdit encore le code. Il suffit donc de :

Workbooks("Classeur1.xls").Range("D19").Copy
Workbooks("Classeur2.xls").Range("B32").PasteSpecial xlPasteValues

(NB- L'utilisation de l'objet Workbook est préférable à l'objet Window si la commande porte sur le contenu et non l'affichage dans la fenêtre ; "Application.CutCopyMode = False" sert à vider le Presse-papier, ici inutile puisque son contenu va être remplacé par la copie, et généralement inutile sauf avant fermeture pour inhiber le message demandant si l'on veut conserver ou non son contenu ; pour le collage en valeurs, un seul argument utile "Paste:=" qui n'a pas sa valeur par défaut, premier argument : on gagne donc à le fournir par position plutôt que le nommer.)

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
Mini PC GMK M2 (Core i7-11390H, 16 Go RAM, SSD 1 To, WiFi 6, BT 5.2, Windows 11) à 326,04 €
326,04 € 390 € -16% @Geekbuying

Geekbuying fait une promotion sur le très bon mini PC GMK M2 qui passe à 326,04 € avec le code promo 7VZJLW4Y. On le trouve habituellement autour de 390 €. Ce mini PC intègre un processeur Intel Core i7-11390H (4 coeurs), 16 Go de RAM DDR4 (extensible jusqu'à 64 Go) et un SSD NVMe de 1 To au format M.2 (un second emplacement libre est également disponible). Il possède un chip graphique Iris Xe qui fera tourner tous vos petits jeux. Il intègre le WiFi 6, le bluetooth 5.2, un port Ethernet Gigabit, 3 ports USB 3.2, 1 port USB 2.0, un port USB-C et deux connecteurs HDMI. Le tout tourne sous Windows 11 Pro.

Une excellente affaire pour un PC très performant, silencieux et qui ne prendra pas de place ! 


Voir le bon plan
Boîtier PC moyen-tour MSI MAG Forge 100M (3 ventilateurs 120 mm, verre trempé) + alimentation modulaire MSI MPG A750GF 750W à 139,99 €
139,99 € 190 € -26% @Cdiscount

Cdiscount fait une promotion sur un pack comprenant le boîtier moyen-tour Forge 100M (3 ventilateurs 120 mm, verre trempé) + alimentation modulaire MSI MPG A750GF 750W à 139,99 € au lieu de 190 €. Et en rajoutant un produit à 10 €, vous pourrez utiliser le code promo 15DES149 et passer le prix de l'ensemble à 134,90 €.


Voir le bon plan
Smartphone 6.67 pouces Xiaomi Redmi Note 12 Pro 5G (FHD+ OLED 120 Hz, 8Go/128Go) à 224,99 €
224,99 € 289 € -22% @Cdiscount

Cdiscount fait une belle promotion sur le smartphone Xiaomi Redmi Note 12 Pro 5G qui passe à 224,99 € avec le code 15DES149 au lieu de 289 €. Ce smartphone dispose d'un écran 6.43 pouces 120 Hz FHD+ OLED (2400x1080 pixels), un processeur Dimensity 1080 8 coeurs, 8 Go de mémoire, de 128 Go d'espace de stockage extensible par microSD, d'un APN 50 MPixels (Sony IMX 766) + 8 + 2 MPixels et d'un APN 16 MP avant, du bluetooh, du Wifi, d'un lecteur d'empreintes digitales. Le tout tourne sous Android 13 avec une surcouche Xiaomi. La batterie à charge rapide 67W est de haute capacité 5000 mAh.


Voir le bon plan
Hub USB C 7 en 1 Baseus (HDMI 4K, 3xUSB 3.0, lecteurs SD et MicroSD, 1xUSB C PD 100W) à 16,99 €
16,99 € 25,99 € -35% @Amazon

Amazon fait une promotion sur le hub USB C 7 en 1 Baseus qui passe à 16,99 € au lieu de 25,99 € grâce à un coupon à activer sur la page du produit. Ce hub vous permettra de rajouter un port HDMI 4K, 3 ports USB 3.0, un lecteur de cartes mémoire SD et MicroSD et un port USB C à votre ordinateur via un simple USB-C. Le port USB C est compatible PD 100W ce qui vous permettra d'alimenter votre ordinateur en même temps.


Voir le bon plan
Webcam Aukey FullHD à 5,59 €
5,59 € 29 € -81% @Cdiscount

Cdiscount propose la webcam Webcam Aukey FullHD à 5,59 €. On la trouve habituellement autour de 29 €. Cette webcam offre une résolution FullHD 1080p pour une vidéo claire et nette et intègre deux microphones réduisant les bruits de fond. Elle est compatible Windows, Mac et Android. 


Voir le bon plan
Imprimante multifonction Epson EcoTank ET-2812 (couleur, réservoir d'encre) à 179,99 €
179,99 € 233 € -23% @Amazon

Amazon fait une promotion sur l'imprimante multifonction jet d'encre couleur Epson EcoTank ET-2812 qui passe à 179,99 € au lieu de 233 €. Le gros avantage de cette imprimante (qui fait aussi copie et numérisation) est qu'elle possède un réservoir d'encre que vous pourrez remplir facilement. Finies les cartouches trop chères ! Ainsi comptez 10 € pour bouteille d'encre de recharge qui permet d'imprimer 4500 pages en noir et 7500 pages en couleur ! Connexion par USB ou WiFi (pratique pour imprimer depuis un portable).


Voir le bon plan

Sujets relatifs
dans word 2007 créer retour d'un lien hypertexte
Créer un titre pour lien hypertexte
Créer un lien hypertexte dans le même document!
lien hypertexte de excel vers messagerie
[XL+lien hypertexte+googlemap]
Lien Hypertexte
Lien hypertexte vers messagerie
Macro Excel 2010-lien hypertexte
lien hypertexte - changer la couleur
Modifier un lien hypertexte
Plus de sujets relatifs à Créer un lien hypertexte vba
 > Tous les forums > Forum Bureautique