Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/04/2011, 14h29   #1
Futur Membre du Club
 
Inscription : avril 2009
Messages : 68
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 68
Points : 15
Points : 15
Par défaut lien hypertext d'un fichier excel

bonjour,

grace à une macro est ce que c'est possible de créer un lien hypertext en précisant juste le début du nom du fichier excel

si c'est possible comment faire?

merci
ninikosim est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2011, 14h31   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
Salut,

C'est quoi le début ?
D'où vient le fichier ?
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2011, 14h50   #3
Futur Membre du Club
 
Inscription : avril 2009
Messages : 68
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 68
Points : 15
Points : 15
je souhaiterai créer une macro où je crée des liens hypertext des fichiers excel qui sont dans un répertoire variable donc l'utilisateur choisi le répertoire.

et vu que mes fichiers excel changent de fin de nom genre toto1 devient toto2. je voudrait bien séléctionner pour un hypertext le fichier de type repertoire/toto*.xls
ninikosim est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2011, 15h59   #4
Futur Membre du Club
 
Inscription : avril 2009
Messages : 68
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 68
Points : 15
Points : 15
bonjour
j'ai commencé à réaliser se dont je voulais
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Private Type BrowseInfo
hWndOwner As Long
pIDLRoot As Long
pszDisplayName As Long
lpszTitle As Long
ulFlags As Long
lpfnCallback As Long
lParam As Long
iImage As Long
End Type
 
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
Private Declare Function lstrcat Lib "kernel32" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
 
Public Function ChoixDossier(Titre)
Dim Rien As Integer
Dim Liste As Long
Dim Resultat As String
Dim Browse_info As BrowseInfo
With Browse_info
.lpszTitle = lstrcat(Titre, "")
.ulFlags = 1
End With
Liste = SHBrowseForFolder(Browse_info)
If Liste Then
Resultat = String$(260, 0)
SHGetPathFromIDList Liste, Resultat
CoTaskMemFree Liste
Rien = InStr(Resultat, vbNullChar)
If Rien Then
ChoixDossier = Left$(Resultat, Rien - 1)
End If
End If
End Function
 
Sub Test()
Dim cheminchoix As String
cheminchoix = ChoixDossier("S")
MsgBox cheminchoix
 
    ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _
        "" & cheminchoix & "/toto *.xls", SubAddress:="", ScreenTip:="", TextToDisplay:="tata"
End Sub
cette macro me permet de choisir le chemin mais je n'arrive pas à trouver le bon fichier il reconnai pas *

merci d'avance
ninikosim est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2011, 16h16   #5
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
Salut,

Ton code m'a l'air bien compliqué !

Perso, je passerai par le FSO qui est plus facile à mettre en oeuvre.
http://warin.developpez.com/access/fichiers/

Pour le répertoire, il existe un objet Office qui peut le faire.

Il suffit d'ajouter la référence Microsoft Scripting Runtime au projet

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Sub ListerFichier()
Dim oFSO As FileSystemObject
Dim oFol As Folder
Dim oFil As File
Dim oDlg As FileDialog
Dim stFol As String
 
 
Set oDlg = Application.FileDialog(msoFileDialogFolderPicker)
oDlg.Show
stFol = oDlg.SelectedItems(1)
 
Set oFSO = New FileSystemObject
Set oFol = oFSO.GetFolder(stFol)
 
For Each oFil In oFol.Files
Debug.Print oFil.Name
Next oFil
 
Set oDlg = Nothing
Set oFol = Nothing
Set oFSO = Nothing
 
 
End Sub
Il ne te reste qu'à faire le tri dans les noms de fichier.
Comme ce sont des strings à toi de voir.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h48.


 
 
 
 
Partenaires

Hébergement Web