Lancer une macro word sur un lien hypertexte ouvert depuis VBA Excel

bonjour

je bloque depuis plusieurs jours sur un point de ma macro

j ai un classeur excel avec plein de lien hypertexte

Je me suis fais une macro excel qui me sélectionne les liens hypertextes ouvrent les fichiers word

Le problèmes la macro excel n arrive pas à lancer la macro word sur le document ouvert par le liens hypertexte

J'ai l impression que le fichier word ne s'active pas

je ne sais pas si j ai été clair

merci pour votre aide

Hello,

Fait voir ton code

R@g

merci de m'aider .

J ai essayé ca mais ca n a pas porté les fruits escomptés il doit surement y avoir mieux car je suis au début de mon initiation VBA et je fais de la bidouille.

Dim Hyper As Hyperlink
For Each Hyper In Worksheets("feuil2").Hyperlinks
For i = 2 To 100 Step 1
If InStr(Hyper.Name, Cells(i, 2)) <> 0 Then Hyper.Follow NewWindow:=True, AddHistory:=True
Hyper.Run "cop.copy"
Next i
Next

merci

Hello,

Voici un exemple de code qui ouvre un doc word depuis excel et declenche une macro (cocher les references word avant ) :

Sub lancerMacroWord()
    Dim wordApp As Word.Application

    Set wordApp = CreateObject("Word.Application")

    wordApp.Visible = True
    wordApp.Documents.Open ("C:\monDocument.doc")
    wordApp.Run "NomModule.NomMacro"
End Sub

R@g

Oui ça je l ai fait mais je ne peux pas rentrer toute les adresses des fichiers puis j ai déjà les liens qui existes c est pour ça que je voulais passer par des liens

Poste un fichier exemple

14classeurtest.xlsm (15.90 Ko)
12document2.docx (15.99 Ko)
12fiche-test1.docx (14.95 Ko)

bonjour désolé pour le délai mais j ai eu un contretemps

j ai modifié un peu le fichier car il s agit d un fichier pro donc confidentiel

on a ce type de tableau avec 2000 lignes car il archive les fiches produit depuis des années.

On compile les fiches techniques des produits activé dans un seul documents donc on ouvre les fichiers 1 a 1 pour copier et coller les fiches dans le document unique . C est un travail qui doit s automatiser car on est plus en 1900

merci pour ton aide

Hello,

Oui ça je l ai fait

Tu n'a rien fait de ce je t'avais donné comme code + haut ...

voici un code qui va ouvrir un à un tes fichiers word en colonne C de ta feuille. Une fois le fichier word ouvert, il va lancer une macro nommée "testing" qui se situe dans le doc word(qu'il faudra bien entendu adapter si le nom de la macro word change...)

A toi de jouer !!!!

Sub PilotageWord()
Dim MonBeauWord As Object
Dim i As Integer

Set MonBeauWord = CreateObject("Word.Application")

With MonBeauWord
    For i = 2 To Range("C" & Rows.Count).End(xlUp).Row
        .Documents.Open Range("C" & i).Value
        .Run "testing"
        .Documents.Close
    Next i
End With
MonBeauWord.Quit
Set MonBeauWord = Nothing

End Sub

R@g

salut

je ne comprend pas ca ne fonctionne pas je te fais suivre tous les essais que j ai pu faire

encore merci pour ton aide

Sub run3()'ko'
Dim MonBeauWord As Object
Set MonBeauWord = CreateObject("Word.Application")
MonBeauWord.Visible = True
With MonBeauWord
For i = 2 To 14 Step 1
.Documents.Open "Cells(i, 3).Value"
.Run "cop.surl"
.Documents.Close
Next i
End With
MonBeauWord.Quit
Set MonBeauWord = NothingEnd Sub

Sub ouvrirdoc()'ok'
Set wordapp = CreateObject("word.Application")
wordapp.Visible = True
wordapp.Documents.Open "C:\........\test 12.docx"
wordapp.Run "cop.surl"
End Sub

Sub essai3()'ok'

Dim MonBeauWord As Object
Set MonBeauWord = CreateObject("Word.Application")
For Each MonBeauWord In Worksheets("feuil1").Hyperlinks
For i = 2 To 14 Step 1
If InStr(MonBeauWord.Name, Cells(i, 3)) <> 0 Then MonBeauWord.Follow NewWindow:=True
Next i
Next
End Sub

Sub essai2()'ko'
Dim MonBeauWord As Object
Set MonBeauWord = CreateObject("Word.Application")
For Each MonBeauWord In Worksheets("feuil1").Hyperlinks
For i = 2 To 2 Step 1
If InStr(MonBeauWord.Name, Cells(i, 3)) <> 0 Then MonBeauWord.Follow NewWindow:=True
Application.Wait Now + TimeValue("0:00:10")
Application.Run "cop.surl"
Next i
Next

Rechercher des sujets similaires à "lancer macro word lien hypertexte ouvert vba"