Récupération données d'un lien hypertexte contenu dans une cellule

Bonjour,

Je ne suis pas un grand expert concernant le langage VBA, et je rencontre un petit problème.

J'ai réussi à créer une macro qui va demander à un utilisateur d'aller choisir un fichier excel via l'explorateur windows. Une fois le fichier sélectionné, la macro va écrire le chemin de ce fichier dans une cellule. Cette cellule est ensuite automatiquement transformé en lien hypertexte dans la cellule en dessous.

J'aimerais réussir à créer une macro qui va automatiquement copier le contenu du fichier (du lien hypertexte) et le collé dans une feuille déjà présente. Le soucis c'est que la localisation du fichier peut changer et donc le chemin aussi. Il faudrait que la macro n'enregistre pas un chemin pré défini mais lise le chemin dans la cellule.

Ci joint le fichier.

Donc sur l'onglet "Feuil11" se trouve deux logos en forme de dossier en cliquant sur ces logos l'explorateur windows s'ouvre et on doit sélectionner un fichier. le chemin est alors écrit dans la cellule à côté et en dessous le lien hypertexte.

Donc est il possible de créer une macro qui va copier le contenu du fichier associé au lien hypertexte (sans l'ouvrir) et le collé sur l'une des feuilles présentes à savoir "Données-GeSu" et "Données-Winchill" car il y a deux boutons donc deux chemins et donc enfaite une même manip qui s'effectue pour deux chemins différents.

J'ai vraiment besoin de votre aide,

Si vous avez besoin de plus d'informations je me tiens à votre disposition.

Cordialement.

25winchillgesu.xlsm (54.14 Ko)

Bonjour Euler le forum

tu peux nous traduire STP ???

donc enfaite une même manip qui s'effectue pour deux chemins différents.

tu as deux boutons qui pour le moment sont supposés te donner deux chemins différents alors ou est la même manip là-dedans??

tu auras dans tous les cas deux manip pour choisir le chemin des fichiers désirés!!

Ensuite tu veux coller le contenu du fichier en lien de gsu dans la feuille gesu et de windchill dans le feuille windchill

mais le pourquoi sans ouvrir les fichiers?? l'ouverture la copie et la clôture ne serait même pas visible lors du déroulement de l'action

à te relire

a+

Papou

Bonjour,

En effet tu as raison papou mais j'ai finalement réussi à résoudre mon problème. avec une macro qui va me demander les deux chemins et fait la copie elle même.

Voici le code :

Sub Importation()

Application.ScreenUpdating = False 'accélère la macro

Set Destination = ActiveWorkbook

Destination.Activate 'Fichier Onglet babar activé

Sheets("Données_GeSu").Select 'Onglet activé

Cells.Select

Selection.ClearContents

MsgBox ("Sélectionner le fichier Extract GeSu")

Source = Application.Dialogs(xlDialogOpen).Show

If Source = False Then

MsgBox ("Aucun fichier sélectionné")

Exit Sub

Else

Set Source = ActiveWorkbook

Source.Activate 'Fichier sélectionné activé

Sheets(1).Select 'Onglet activé

Cells.Select 'Feuille entièrement sélectionnée

Selection.Copy

Destination.Activate 'Fichier Onglet babar activé

Sheets("Données_GeSu").Select 'Onglet active

Range("a1").Select

Selection.PasteSpecial Paste:=xlPasteValues 'Collage spécial valeurs

Source.Activate 'Fichier sélectionné activé

Application.CutCopyMode = False

ActiveWindow.Close SaveChanges:=False 'Fichier sélectionné fermé

End If

Set Destination = ActiveWorkbook

Destination.Activate 'Fichier Onglet babar activé

Sheets("Données_Winchill").Select 'Onglet activé

Cells.Select

Selection.ClearContents

MsgBox ("Sélectionner le fichier Extract Winchill")

Source = Application.Dialogs(xlDialogOpen).Show

If Source = False Then

MsgBox ("Aucun fichier sélectionné")

Exit Sub

Else

Set Source = ActiveWorkbook

Source.Activate 'Fichier sélectionné activé

Sheets(1).Select 'Onglet activé

Cells.Select 'Feuille entièrement sélectionnée

Selection.Copy

Destination.Activate 'Fichier Onglet babar activé

Sheets("Données_Winchill").Select 'Onglet active

Range("a1").Select

Selection.PasteSpecial Paste:=xlPasteValues 'Collage spécial valeurs

Source.Activate 'Fichier sélectionné activé

Application.CutCopyMode = False

ActiveWindow.Close SaveChanges:=False 'Fichier sélectionné fermé

End If

Sheets("Feuil11").Select

Exit Sub

End Sub

Cordialement,

Euler

Bonjour euler le forum

bon alors ton problème est résolu???

Par contre ta macro !!!! C'est n'importe quoi, avec tous les select, les select ne sont pas utiles, l'activation des feuilles ne sert à rien sauf à ralentir l'exécution.

Mais si ta macro te convient, c'est parfait pour moi.

a+

Papou

exemple dans ton code:

Destination.Activate 'Fichier Onglet babar activé
Sheets("Données_GeSu").Select 'Onglet activé
Cells.Select
Selection.ClearContents

le code ci-dessus peut être remplacé par

Sheets("Données_GeSu").cells.clearcontents

un peu plus propre non????

Et ce n'est bien sur qu'un exemple, car tout ton code est rempli de ce style de lignes

Rechercher des sujets similaires à "recuperation donnees lien hypertexte contenu"