Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA : créer un raccourci

8 réponses
Avatar
Jac
Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon automatique
un raccourci.
Mais il me manque le formule magique...

Merci d'avance.

Jac

8 réponses

Avatar
Jac
Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac
Avatar
Patrick
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick


"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac





Avatar
Jac
Bonjour Patrick,

merci pour ta réponse rapide. J'ai mis la procédure dans un module, activé
la bibliothèque, mais il n'y a rien qui démarre...


"Patrick" a écrit dans le message de
news:
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick

"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon
automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac




Avatar
isabelle
salut Jac,

tu veut faire quoi au juste, créer un racourci ou ouvrir un fichier ?

isabelle

Bonjour Patrick,

merci pour ta réponse rapide. J'ai mis la procédure dans un module, activé
la bibliothèque, mais il n'y a rien qui démarre...


"Patrick" a écrit dans le message de
news:
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick

"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon
automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac








Avatar
Jac
Je veux créer un raccourci.

En fait, quand le fichier XL est enregistré, j'aimerais, dans la foulée
générer un raccourci sur le bureau (cf: fil suivant "VBA: adresse de mon
bureau).

La vraie finalité c'est d'enregistrer le fichier sous un nom incrémental
(numérique ou date et heure) (ça je sais faire) et de supprimer l'ancien
raccourci qui est sur le bureau et créer un nouveau raccourci qui renvoie
sur le dernier fichier ou de mettre à jour le lien du raccourci qui est déjà
sur le bureau et qui s'appliquait à la version précédente du fichier.
Je pourrais faire un raccourci du répertoire cible, mais j'ai peur que
l'utilisateur n'ouvre pas forcément le dernier fichier. Il suffirait d'un
tri pas dans le bon sens et un peu d'inattention pour que le fichier ouvert
ne soit pas le dernier. J'ai une solution avec des enregistrer sous et des
effacements de fichiers, mais un bon raccourci ferait tellement bien
l'affaire...

Voilà mon attente, clairement exposée (enfin je l'espère).
Merci d'y regarder.

Jac

"isabelle" a écrit dans le message de news:
%
salut Jac,

tu veut faire quoi au juste, créer un racourci ou ouvrir un fichier ?

isabelle

Bonjour Patrick,

merci pour ta réponse rapide. J'ai mis la procédure dans un module,
activé la bibliothèque, mais il n'y a rien qui démarre...


"Patrick" a écrit dans le message de
news:
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux
utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As
String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick

"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon
automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac









Avatar
isabelle
bonjour Jac,

si j'ai bien compris il faudrait rediriger un racourci existant sur le bureau,
vers l'emplacement de ce nouveau classeur lors de son enregistrement.
ai je bien compris ?

isabelle

Je veux créer un raccourci.

En fait, quand le fichier XL est enregistré, j'aimerais, dans la foulée
générer un raccourci sur le bureau (cf: fil suivant "VBA: adresse de mon
bureau).

La vraie finalité c'est d'enregistrer le fichier sous un nom incrémental
(numérique ou date et heure) (ça je sais faire) et de supprimer l'ancien
raccourci qui est sur le bureau et créer un nouveau raccourci qui renvoie
sur le dernier fichier ou de mettre à jour le lien du raccourci qui est déjà
sur le bureau et qui s'appliquait à la version précédente du fichier.
Je pourrais faire un raccourci du répertoire cible, mais j'ai peur que
l'utilisateur n'ouvre pas forcément le dernier fichier. Il suffirait d'un
tri pas dans le bon sens et un peu d'inattention pour que le fichier ouvert
ne soit pas le dernier. J'ai une solution avec des enregistrer sous et des
effacements de fichiers, mais un bon raccourci ferait tellement bien
l'affaire...

Voilà mon attente, clairement exposée (enfin je l'espère).
Merci d'y regarder.

Jac

"isabelle" a écrit dans le message de news:
%
salut Jac,

tu veut faire quoi au juste, créer un racourci ou ouvrir un fichier ?

isabelle

Bonjour Patrick,

merci pour ta réponse rapide. J'ai mis la procédure dans un module,
activé la bibliothèque, mais il n'y a rien qui démarre...


"Patrick" a écrit dans le message de
news:
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux
utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As
String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick

"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon
automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac











Avatar
Jac
Exactement, deux lignes te suffisent pour tout résumer !!!

"isabelle" a écrit dans le message de news:

bonjour Jac,

si j'ai bien compris il faudrait rediriger un racourci existant sur le
bureau,
vers l'emplacement de ce nouveau classeur lors de son enregistrement.
ai je bien compris ?

isabelle

Je veux créer un raccourci.

En fait, quand le fichier XL est enregistré, j'aimerais, dans la foulée
générer un raccourci sur le bureau (cf: fil suivant "VBA: adresse de mon
bureau).

La vraie finalité c'est d'enregistrer le fichier sous un nom incrémental
(numérique ou date et heure) (ça je sais faire) et de supprimer l'ancien
raccourci qui est sur le bureau et créer un nouveau raccourci qui renvoie
sur le dernier fichier ou de mettre à jour le lien du raccourci qui est
déjà sur le bureau et qui s'appliquait à la version précédente du
fichier.
Je pourrais faire un raccourci du répertoire cible, mais j'ai peur que
l'utilisateur n'ouvre pas forcément le dernier fichier. Il suffirait d'un
tri pas dans le bon sens et un peu d'inattention pour que le fichier
ouvert ne soit pas le dernier. J'ai une solution avec des enregistrer
sous et des effacements de fichiers, mais un bon raccourci ferait
tellement bien l'affaire...

Voilà mon attente, clairement exposée (enfin je l'espère).
Merci d'y regarder.

Jac

"isabelle" a écrit dans le message de news:
%
salut Jac,

tu veut faire quoi au juste, créer un racourci ou ouvrir un fichier ?

isabelle

Bonjour Patrick,

merci pour ta réponse rapide. J'ai mis la procédure dans un module,
activé la bibliothèque, mais il n'y a rien qui démarre...


"Patrick" a écrit dans le message
de news:
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux
utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As
String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick

"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon
automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac













Avatar
isabelle
bonjour Patrick,

je te rend la main, pour ma part il est temps de retrouver morphée, si tu n'es pas disponible je suis de retour demain (heure québec),
a+
isabelle


Exactement, deux lignes te suffisent pour tout résumer !!!

"isabelle" a écrit dans le message de news:

bonjour Jac,

si j'ai bien compris il faudrait rediriger un racourci existant sur le
bureau,
vers l'emplacement de ce nouveau classeur lors de son enregistrement.
ai je bien compris ?

isabelle

Je veux créer un raccourci.

En fait, quand le fichier XL est enregistré, j'aimerais, dans la foulée
générer un raccourci sur le bureau (cf: fil suivant "VBA: adresse de mon
bureau).

La vraie finalité c'est d'enregistrer le fichier sous un nom incrémental
(numérique ou date et heure) (ça je sais faire) et de supprimer l'ancien
raccourci qui est sur le bureau et créer un nouveau raccourci qui renvoie
sur le dernier fichier ou de mettre à jour le lien du raccourci qui est
déjà sur le bureau et qui s'appliquait à la version précédente du
fichier.
Je pourrais faire un raccourci du répertoire cible, mais j'ai peur que
l'utilisateur n'ouvre pas forcément le dernier fichier. Il suffirait d'un
tri pas dans le bon sens et un peu d'inattention pour que le fichier
ouvert ne soit pas le dernier. J'ai une solution avec des enregistrer
sous et des effacements de fichiers, mais un bon raccourci ferait
tellement bien l'affaire...

Voilà mon attente, clairement exposée (enfin je l'espère).
Merci d'y regarder.

Jac

"isabelle" a écrit dans le message de news:
%
salut Jac,

tu veut faire quoi au juste, créer un racourci ou ouvrir un fichier ?

isabelle

Bonjour Patrick,

merci pour ta réponse rapide. J'ai mis la procédure dans un module,
activé la bibliothèque, mais il n'y a rien qui démarre...


"Patrick" a écrit dans le message
de news:
Bonjour,

Avec la bibliothèque "Windows Script Host Object Model", tu peux
utiliser
ceci :

Public Sub File_Shortcut(ByVal Folder As String, ByVal LinkName As
String,
ByVal LinkPath As String)
Dim sLink As String
Dim wsLink As WshShortcut
Dim wsShell As WshShell
'
sLink = Folder & LinkName & ".lnk"
'
Set wsShell = New WshShell
Set wsLink = wsShell.CreateShortcut(sLink)
With wsLink
.Description = LinkName
.TargetPath = LinkPath
.WindowStyle = 3
.Save
End With
'
Set wsLink = Nothing
Set wsShell = Nothing
End Sub

--
Patrick

"Jac" wrote:

Bonjour à tous,

quand j'enregistre un fichier, j'aimerais pouvoir créer de façon
automatique
un raccourci. Mais il me manque la formule magique...

Merci d'avance.

Jac