lien hypertxt & telechargement automatique

Le
sleg
BOjour,

j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.

merci de votre aide.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #22598531
Bonjour,

Mets cette macro dans un module standard de ton fichier contenant les liens hypertextes

Les fichiers originaux ne sont pas touchés, déplacés ou supprimés. Ils sont simplement copiées vers leur nouvelle
destination. Ne pas oublier de spécifier le répertoire de destination.

'-----------------------------------
Sub test()

Dim Sh As Worksheet, Lien As Hyperlink
Dim FS As Object, X As String, Dest As String

'où tu veux copier tes fichiers
Dest = "\ServeurMonRépertoire"

Set FS = CreateObject("Scripting.FileSystemObject")
For Each Sh In ThisWorkbook.Worksheets
For Each Lien In Sh.Hyperlinks
X = Lien.Address
If Dir(X) <> "" Then
FS.CopyFile X, Dest
End If
Next
Next
End Sub
'-----------------------------------

--
MichD
--------------------------------------------


"sleg"
BOjour,

j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.

merci de votre aide.
DanielCo
Le #22598521
Bonjour. Essaie le code suivant :

Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
For Each h In sh.Hyperlinks
Fich = Dir(h.Address)
FileCopy h.Address, "c:temp" & fich
Next h
Next sh
End Sub

Daniel


BOjour,

j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.

merci de votre aide.
sleg
Le #22600601
Bonjour,

j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
fichier incorect ? une idée ?


bonne journée


On 22 sep, 15:22, DanielCo
Bonjour. Essaie le code suivant :

Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        Fich = Dir(h.Address)
        FileCopy h.Address, "c:temp"  & fich
    Next h
Next sh
End Sub

Daniel



> BOjour,

> j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
> des fichiers et j'aimerais savoir s'il est possible de lancer une
> macro qui irait chercher chanque fichier et les enregistrer dans un
> repertoire reseau.

> merci de votre aide.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -
DanielCo
Le #22600841
Bonjoour.
Peut-être as-tu des adresses mail dans certaines cellules ?
Teste la macro suivante:
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
For Each h In sh.Hyperlinks
If Left(h.Address, 4) <> "mail" Then
Fich = Dir(h.Address)
FileCopy h.Address, "c:temp & fich"
End If
Next h
Next sh
End Sub
Daniel


Bonjour,

j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
fichier incorect ? une idée ?


bonne journée


On 22 sep, 15:22, DanielCo
Bonjour. Essaie le code suivant :

Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        Fich = Dir(h.Address)
        FileCopy h.Address, "c:temp"  & fich
    Next h
Next sh
End Sub

Daniel



BOjour,



j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.



merci de votre aide.- Masquer le texte des messages précédents -



- Afficher le texte des messages précédents -
sleg
Le #22602831
non pas d'adrese mais j'ai du mal m'explique le lien hypertxt est sous
la forme http://



On 23 sep, 09:27, DanielCo
Bonjoour.
Peut-être as-tu des adresses mail dans certaines cellules ?
Teste la macro suivante:
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        If Left(h.Address, 4) <> "mail" Then
            Fich = Dir(h.Address)
            FileCopy h.Address, "c:temp  & fich"
        End If
    Next h
Next sh
End Sub
Daniel





> Bonjour,

> j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
> fichier incorect ? une idée ?

> bonne journée

> On 22 sep, 15:22, DanielCo >> Bonjour. Essaie le code suivant :

>> Sub test()
>> Dim c As Range, Fich As String
>> Dim sh As Worksheet, h As Hyperlink
>> For Each sh In Worksheets
>>     For Each h In sh.Hyperlinks
>>         Fich = Dir(h.Address)
>>         FileCopy h.Address, "c:temp"  & fich
>>     Next h
>> Next sh
>> End Sub

>> Daniel

>>> BOjour,

>>> j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
>>> des fichiers et j'aimerais savoir s'il est possible de lancer une
>>> macro qui irait chercher chanque fichier et les enregistrer dans un
>>> repertoire reseau.

>>> merci de votre aide.- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -

- Afficher le texte des messages précédents -
DanielCo
Le #22602871
Alors, tu as peut-être des liens vers des fichiers ou des adresses FTP
?
Essaie :
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
For Each h In sh.Hyperlinks
If Left(h.Address, 7) = "http://" Then
Fich = Dir(h.Address)
FileCopy h.Address, "c:temp & fich"
End If
Next h
Next sh
End Sub
Daniel


non pas d'adrese mais j'ai du mal m'explique le lien hypertxt est sous
la forme http://



On 23 sep, 09:27, DanielCo
Bonjoour.
Peut-être as-tu des adresses mail dans certaines cellules ?
Teste la macro suivante:
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        If Left(h.Address, 4) <> "mail" Then
            Fich = Dir(h.Address)
            FileCopy h.Address, "c:temp  & fich"
        End If
    Next h
Next sh
End Sub
Daniel





Bonjour,



j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
fichier incorect ? une idée ?



bonne journée



On 22 sep, 15:22, DanielCo
Bonjour. Essaie le code suivant :





Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        Fich = Dir(h.Address)
        FileCopy h.Address, "c:temp"  & fich
    Next h
Next sh
End Sub





Daniel





BOjour,







j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.







merci de votre aide.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -





- Afficher le texte des messages précédents -
sleg
Le #22607091
BOnjour,

non toujours meme erreur mais en cliquant sur le lien dans ma feuille
excel il me lance IE avant de telecharger le fichier peu etre une
piste ???

merci de votre aide.


On 23 sep, 15:11, DanielCo
Alors, tu as peut-être des liens vers des fichiers ou des adresses FTP
?
Essaie :
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        If Left(h.Address, 7) = "http://" Then
            Fich = Dir(h.Address)
            FileCopy h.Address, "c:temp  & fich"
        End If
    Next h
Next sh
End Sub
Daniel



> non pas d'adrese mais j'ai du mal m'explique le lien hypertxt est sous
> la forme http://

> On 23 sep, 09:27, DanielCo >> Bonjoour.
>> Peut-être as-tu des adresses mail dans certaines cellules ?
>> Teste la macro suivante:
>> Sub test()
>> Dim c As Range, Fich As String
>> Dim sh As Worksheet, h As Hyperlink
>> For Each sh In Worksheets
>>     For Each h In sh.Hyperlinks
>>         If Left(h.Address, 4) <> "mail" Then
>>             Fich = Dir(h.Address)
>>             FileCopy h.Address, "c:temp  & fich"
>>         End If
>>     Next h
>> Next sh
>> End Sub
>> Daniel

>>> Bonjour,

>>> j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
>>> fichier incorect ? une idée ?

>>> bonne journée

>>> On 22 sep, 15:22, DanielCo >>>> Bonjour. Essaie le code suivant :

>>>> Sub test()
>>>> Dim c As Range, Fich As String
>>>> Dim sh As Worksheet, h As Hyperlink
>>>> For Each sh In Worksheets
>>>>     For Each h In sh.Hyperlinks
>>>>         Fich = Dir(h.Address)
>>>>         FileCopy h.Address, "c:temp"  & fich
>>>>     Next h
>>>> Next sh
>>>> End Sub

>>>> Daniel

>>>>> BOjour,

>>>>> j'ai un fichier avec des centaines de lien hypertxt qui pointent su r
>>>>> des fichiers et j'aimerais savoir s'il est possible de lancer une
>>>>> macro qui irait chercher chanque fichier et les enregistrer dans un
>>>>> repertoire reseau.

>>>>> merci de votre aide.- Masquer le texte des messages précédents -
>>>> - Afficher le texte des messages précédents -- Masquer le texte des
>>>> messages précédents -

>> - Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -

- Afficher le texte des messages précédents -
DanielCo
Le #22607171
Bonjour.
Utilise le code suivant, il te donneras l'adresse de la première
cellule provoquant l'erreur. Poste l'adresse web correspondante :

Sub test4()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
On Error GoTo Err
For Each sh In Worksheets
For Each h In sh.Hyperlinks
Fich = Dir(h.Address)
FileCopy h.Address, "c:temp & fich"
Next h
Next sh
Err:
MsgBox sh.Name & " " & h.Range.Address
End Sub

Daniel


BOnjour,

non toujours meme erreur mais en cliquant sur le lien dans ma feuille
excel il me lance IE avant de telecharger le fichier peu etre une
piste ???

merci de votre aide.


On 23 sep, 15:11, DanielCo
Alors, tu as peut-être des liens vers des fichiers ou des adresses FTP
?
Essaie :
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        If Left(h.Address, 7) = "http://" Then
            Fich = Dir(h.Address)
            FileCopy h.Address, "c:temp  & fich"
        End If
    Next h
Next sh
End Sub
Daniel



non pas d'adrese mais j'ai du mal m'explique le lien hypertxt est sous
la forme http://



On 23 sep, 09:27, DanielCo
Bonjoour.
Peut-être as-tu des adresses mail dans certaines cellules ?
Teste la macro suivante:
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        If Left(h.Address, 4) <> "mail" Then
            Fich = Dir(h.Address)
            FileCopy h.Address, "c:temp  & fich"
        End If
    Next h
Next sh
End Sub
Daniel





Bonjour,







j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
fichier incorect ? une idée ?







bonne journée







On 22 sep, 15:22, DanielCo
Bonjour. Essaie le code suivant :
Sub test()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        Fich = Dir(h.Address)
        FileCopy h.Address, "c:temp"  & fich
    Next h
Next sh
End Sub









Daniel









BOjour,











j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.











merci de votre aide.- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -









- Afficher le texte des messages précédents -- Masquer le texte des
messages précédents -





- Afficher le texte des messages précédents -
sleg
Le #22607801
feuill1 a1 donc premiere cellule avec une adresse

c une adresse interne
http://e-darsi.rm.corp.local/inc_php/printDarsi.php?action=pdf&id818 &menu=6&lang=FR


On 24 sep, 12:22, DanielCo
Bonjour.
Utilise le code suivant, il te donneras l'adresse de la première
cellule provoquant l'erreur. Poste l'adresse web correspondante :

Sub test4()
Dim c As Range, Fich As String
Dim sh As Worksheet, h As Hyperlink
On Error GoTo Err
For Each sh In Worksheets
    For Each h In sh.Hyperlinks
        Fich = Dir(h.Address)
        FileCopy h.Address, "c:temp  & fich"
    Next h
Next sh
Err:
MsgBox sh.Name & " " & h.Range.Address
End Sub

Daniel



> BOnjour,

> non toujours meme erreur mais en cliquant sur le lien dans ma feuille
> excel il me lance IE avant de telecharger le fichier peu etre une
> piste ???

> merci de votre aide.

> On 23 sep, 15:11, DanielCo >> Alors, tu as peut-être des liens vers des fichiers ou des adresses F TP
>> ?
>> Essaie :
>> Sub test()
>> Dim c As Range, Fich As String
>> Dim sh As Worksheet, h As Hyperlink
>> For Each sh In Worksheets
>>     For Each h In sh.Hyperlinks
>>         If Left(h.Address, 7) = "http://" Then
>>             Fich = Dir(h.Address)
>>             FileCopy h.Address, "c:temp  & fich"
>>         End If
>>     Next h
>> Next sh
>> End Sub
>> Daniel

>>> non pas d'adrese mais j'ai du mal m'explique le lien hypertxt est sou s
>>> la forme http://

>>> On 23 sep, 09:27, DanielCo >>>> Bonjoour.
>>>> Peut-être as-tu des adresses mail dans certaines cellules ?
>>>> Teste la macro suivante:
>>>> Sub test()
>>>> Dim c As Range, Fich As String
>>>> Dim sh As Worksheet, h As Hyperlink
>>>> For Each sh In Worksheets
>>>>     For Each h In sh.Hyperlinks
>>>>         If Left(h.Address, 4) <> "mail" Then
>>>>             Fich = Dir(h.Address)
>>>>             FileCopy h.Address, "c:temp  & fich"
>>>>         End If
>>>>     Next h
>>>> Next sh
>>>> End Sub
>>>> Daniel

>>>>> Bonjour,

>>>>> j'ai testé les 2 macro et j'obtiens la meme erreur 52 nom ou n° e
>>>>> fichier incorect ? une idée ?

>>>>> bonne journée

>>>>> On 22 sep, 15:22, DanielCo >>>>>> Bonjour. Essaie le code suivant :
>>>>>> Sub test()
>>>>>> Dim c As Range, Fich As String
>>>>>> Dim sh As Worksheet, h As Hyperlink
>>>>>> For Each sh In Worksheets
>>>>>>     For Each h In sh.Hyperlinks
>>>>>>         Fich = Dir(h.Address)
>>>>>>         FileCopy h.Address, "c:temp"  & fich
>>>>>>     Next h
>>>>>> Next sh
>>>>>> End Sub

>>>>>> Daniel

>>>>>>> BOjour,

>>>>>>> j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
>>>>>>> des fichiers et j'aimerais savoir s'il est possible de lancer une
>>>>>>> macro qui irait chercher chanque fichier et les enregistrer dans un
>>>>>>> repertoire reseau.

>>>>>>> merci de votre aide.- Masquer le texte des messages précédent s -
>>>>>> - Afficher le texte des messages précédents -- Masquer le text e des
>>>>>> messages précédents -

>>>> - Afficher le texte des messages précédents -- Masquer le texte des
>>>> messages précédents -

>> - Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -

- Afficher le texte des messages précédents -
michdenis
Le #22607851
Si tu parles de téléchargement d'un fichier à partir d'une adresse dans une cellule
regarde le fichier suivant : http://cjoint.com/?jyps0ePs7Y

--
MichD
--------------------------------------------


"michdenis" Bonjour,

Mets cette macro dans un module standard de ton fichier contenant les liens hypertextes

Les fichiers originaux ne sont pas touchés, déplacés ou supprimés. Ils sont simplement copiées vers leur nouvelle
destination. Ne pas oublier de spécifier le répertoire de destination.

'-----------------------------------
Sub test()

Dim Sh As Worksheet, Lien As Hyperlink
Dim FS As Object, X As String, Dest As String

'où tu veux copier tes fichiers
Dest = "\ServeurMonRépertoire"

Set FS = CreateObject("Scripting.FileSystemObject")
For Each Sh In ThisWorkbook.Worksheets
For Each Lien In Sh.Hyperlinks
X = Lien.Address
If Dir(X) <> "" Then
FS.CopyFile X, Dest
End If
Next
Next
End Sub
'-----------------------------------

--
MichD
--------------------------------------------


"sleg"
BOjour,

j'ai un fichier avec des centaines de lien hypertxt qui pointent sur
des fichiers et j'aimerais savoir s'il est possible de lancer une
macro qui irait chercher chanque fichier et les enregistrer dans un
repertoire reseau.

merci de votre aide.
Publicité
Poster une réponse
Anonyme