créer un lien, ouvrir et enregister à partir d'un modèle Excel
20 réponses
Greg
Bonjour,
J'ai un classeur que l'on pourrait appeler « synthèse », qui est une sorte
de sommaire. Chaque feuille de ce classeur correspond à une catégorie bien
précise, et renvoie à des classeurs bien spécifiques bâtis selon un modèle.
Je souhaite, avant de m'engager dans l'écriture de mon « sommaire », pouvoir
créer une macro qui allègerait l'utilisateur dans l'archivage, la création
de liens, l'ouverture du modèle etc.
Exemple : je suis en F7 et je lance la macro.
1- Création d'un lien hypertexte en F7
2- Ouverture d'une fenêtre d'enregistrement d'un document Excel s'appuyant
sur un modèle (dont la cible serait définie dans la macro)
3- Enregistrement du document qui s'appuie sur le modèle dont le nom est en
colonne B de la même ligne (ici, B7)
4- Ouverture du classeur directement après l'enregistrement, prêt à la
saisie.
Je ne sais pas si j'ai l'ordre juste des commandes (intuitivement, j'ai l'impression
qu'il y a quelque chose qui cloche.)
Est-ce envisageable ?
NB : Chaque feuille de mon classeur d'origine renvoie à un document modèle
particulier, je dois donc créer un code par feuille avec le modèle et la
cible du document.
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par le code soit en doublecliquant dessus, soit par Fichier/ouvrir de l'application Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car ouvert par le code) quel nom porte t'il vue d'Excel
Merci de ta réponse avec les 3 manières décrites
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que
tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de
news:748356E5-6518-457B-B7EC-09FA3D6D2896@microsoft.com...
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par
le
code soit en doublecliquant dessus, soit par Fichier/ouvrir de
l'application
Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car
ouvert par le code) quel nom porte t'il vue d'Excel
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par le code soit en doublecliquant dessus, soit par Fichier/ouvrir de l'application Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car ouvert par le code) quel nom porte t'il vue d'Excel
Merci de ta réponse avec les 3 manières décrites
Greg
"Ah oui!" (c'est le cri du coeur qui a bien fait rire ma femme...)
Ca marche impeccable cette fois. Il ne reste qu'à adapter le code à la ligne active tel que je le spécifiais dans mon message de 16h42. Je pense que nous atteignons le but.
Merci beaucoup
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Je te propose cette variante qui produit exactement le même effet mais peut être sans ta déconvenue récalcitrante :
Chemin = "E:Chemin" ChDrive (E) ChDir (Chemin) Source = Application.GetOpenFilename() If Source <> "Faux" Then Nom = Range("B7") & ".xls" ActiveSheet.Hyperlinks.Add Anchor:=Range("F7"), Address:= _ Chemin & Nom, TextToDisplay:= _ Range("F7") & " VOIR LE LIEN" Workbooks.Open (Source) ActiveWorkbook.SaveAs (Chemin & Nom) End If
Adaptes :
Chemin = "E:Chemin" (du chemin du répertoire de tes modèles) ChDrive (E) (de la lettre du lecteur de ton disque dur)
"Ah oui!" (c'est le cri du coeur qui a bien fait rire ma femme...)
Ca marche impeccable cette fois. Il ne reste qu'à adapter le code à la ligne
active tel que je le spécifiais dans mon message de 16h42. Je pense que nous
atteignons le but.
Merci beaucoup
Greg
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de
news:98F1EC87-0871-405F-92D2-4D7E2C3B1F31@microsoft.com...
Rebonjour à toi
Je te propose cette variante qui produit exactement le même effet mais
peut
être sans ta déconvenue récalcitrante :
Chemin = "E:Chemin"
ChDrive (E)
ChDir (Chemin)
Source = Application.GetOpenFilename()
If Source <> "Faux" Then
Nom = Range("B7") & ".xls"
ActiveSheet.Hyperlinks.Add Anchor:=Range("F7"), Address:= _
Chemin & Nom, TextToDisplay:= _
Range("F7") & " VOIR LE LIEN"
Workbooks.Open (Source)
ActiveWorkbook.SaveAs (Chemin & Nom)
End If
Adaptes :
Chemin = "E:Chemin" (du chemin du répertoire de tes modèles)
ChDrive (E) (de la lettre du lecteur de ton disque dur)
"Ah oui!" (c'est le cri du coeur qui a bien fait rire ma femme...)
Ca marche impeccable cette fois. Il ne reste qu'à adapter le code à la ligne active tel que je le spécifiais dans mon message de 16h42. Je pense que nous atteignons le but.
Merci beaucoup
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Je te propose cette variante qui produit exactement le même effet mais peut être sans ta déconvenue récalcitrante :
Chemin = "E:Chemin" ChDrive (E) ChDir (Chemin) Source = Application.GetOpenFilename() If Source <> "Faux" Then Nom = Range("B7") & ".xls" ActiveSheet.Hyperlinks.Add Anchor:=Range("F7"), Address:= _ Chemin & Nom, TextToDisplay:= _ Range("F7") & " VOIR LE LIEN" Workbooks.Open (Source) ActiveWorkbook.SaveAs (Chemin & Nom) End If
Adaptes :
Chemin = "E:Chemin" (du chemin du répertoire de tes modèles) ChDrive (E) (de la lettre du lecteur de ton disque dur)
Bonsoir à tous et en particulier à Daniel qui m'a bien coacher sur ce coup là!
Alors, voilà le code final si ça intéresse quelqu'un. Les dernières modifs permettent de s'adapter à n'importe quelle ligne, de travailler sur la ligne active:
Sub Créer_Lien()
Chemin = "C:UsersuserDesktopessai2" ChDrive (C) ChDir (Chemin) Source = Application.GetOpenFilename() If Source <> "Faux" Then Nom = Cells(ActiveCell.Row, 2) & ".xls" ActiveSheet.Hyperlinks.Add Anchor:Îlls(ActiveCell.Row, 4), Address:= _ Chemin & Nom, TextToDisplay:= _ Cells(ActiveCell.Row, 4) & "X" Workbooks.Open (Source) ActiveWorkbook.SaveAs (Chemin & Nom) End If
End Sub
Un dernier grand merci à Daniel
à plus
Greg
NB: Je viens de me commander 3 bouquins pour mieux maîtriser le VBA... Mais je crois que j'aurai encore longtemps besoin de vous...
"Greg" a écrit dans le message de news:
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par le code soit en doublecliquant dessus, soit par Fichier/ouvrir de l'application Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car ouvert par le code) quel nom porte t'il vue d'Excel
Merci de ta réponse avec les 3 manières décrites
Bonsoir à tous et en particulier à Daniel qui m'a bien coacher sur ce coup
là!
Alors, voilà le code final si ça intéresse quelqu'un. Les dernières modifs
permettent de s'adapter à n'importe quelle ligne, de travailler sur la ligne
active:
Sub Créer_Lien()
Chemin = "C:UsersuserDesktopessai2"
ChDrive (C)
ChDir (Chemin)
Source = Application.GetOpenFilename()
If Source <> "Faux" Then
Nom = Cells(ActiveCell.Row, 2) & ".xls"
ActiveSheet.Hyperlinks.Add Anchor:Îlls(ActiveCell.Row, 4), Address:= _
Chemin & Nom, TextToDisplay:= _
Cells(ActiveCell.Row, 4) & "X"
Workbooks.Open (Source)
ActiveWorkbook.SaveAs (Chemin & Nom)
End If
End Sub
Un dernier grand merci à Daniel
à plus
Greg
NB: Je viens de me commander 3 bouquins pour mieux maîtriser le VBA... Mais
je crois que j'aurai encore longtemps besoin de vous...
"Greg" <debutant@free.fr> a écrit dans le message de
news:99DB368A-80AD-4EED-A29C-DAC84CBA7A3F@microsoft.com...
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que
tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de
news:748356E5-6518-457B-B7EC-09FA3D6D2896@microsoft.com...
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par
le
code soit en doublecliquant dessus, soit par Fichier/ouvrir de
l'application
Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant
car
ouvert par le code) quel nom porte t'il vue d'Excel
Bonsoir à tous et en particulier à Daniel qui m'a bien coacher sur ce coup là!
Alors, voilà le code final si ça intéresse quelqu'un. Les dernières modifs permettent de s'adapter à n'importe quelle ligne, de travailler sur la ligne active:
Sub Créer_Lien()
Chemin = "C:UsersuserDesktopessai2" ChDrive (C) ChDir (Chemin) Source = Application.GetOpenFilename() If Source <> "Faux" Then Nom = Cells(ActiveCell.Row, 2) & ".xls" ActiveSheet.Hyperlinks.Add Anchor:Îlls(ActiveCell.Row, 4), Address:= _ Chemin & Nom, TextToDisplay:= _ Cells(ActiveCell.Row, 4) & "X" Workbooks.Open (Source) ActiveWorkbook.SaveAs (Chemin & Nom) End If
End Sub
Un dernier grand merci à Daniel
à plus
Greg
NB: Je viens de me commander 3 bouquins pour mieux maîtriser le VBA... Mais je crois que j'aurai encore longtemps besoin de vous...
"Greg" a écrit dans le message de news:
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par le code soit en doublecliquant dessus, soit par Fichier/ouvrir de l'application Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car ouvert par le code) quel nom porte t'il vue d'Excel
Merci de ta réponse avec les 3 manières décrites
Daniel.C
> Un dernier grand merci à Daniel
J'ai pourtant pas transpiré beaucoup sur ce coup là ? Daniel
> Un dernier grand merci à Daniel
J'ai pourtant pas transpiré beaucoup sur ce coup là ?
Daniel
Salut Daniel Tu as du penser trés fort et m'inspirer grandement pour sortir la potion miracle Ces remerciements ne sont pas anodin Profites en !!!!
Greg
Bonjour FFO et excuse-moi... il était tard et Daniel m'avait donné un dernier coup de pouce dans un autre post... honte à moi!
Alors je rends à FFO cet hommage concernant ce projet, avec le béotien que je suis!
à plus
Greg
"Greg" a écrit dans le message de news:
Bonsoir à tous et en particulier à Daniel qui m'a bien coacher sur ce coup là!
Alors, voilà le code final si ça intéresse quelqu'un. Les dernières modifs permettent de s'adapter à n'importe quelle ligne, de travailler sur la ligne active:
Sub Créer_Lien()
Chemin = "C:UsersuserDesktopessai2" ChDrive (C) ChDir (Chemin) Source = Application.GetOpenFilename() If Source <> "Faux" Then Nom = Cells(ActiveCell.Row, 2) & ".xls" ActiveSheet.Hyperlinks.Add Anchor:Îlls(ActiveCell.Row, 4), Address:= _ Chemin & Nom, TextToDisplay:= _ Cells(ActiveCell.Row, 4) & "X" Workbooks.Open (Source) ActiveWorkbook.SaveAs (Chemin & Nom) End If
End Sub
Un dernier grand merci à Daniel
à plus
Greg
NB: Je viens de me commander 3 bouquins pour mieux maîtriser le VBA... Mais je crois que j'aurai encore longtemps besoin de vous...
"Greg" a écrit dans le message de news:
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par le code soit en doublecliquant dessus, soit par Fichier/ouvrir de l'application Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car ouvert par le code) quel nom porte t'il vue d'Excel
Merci de ta réponse avec les 3 manières décrites
Bonjour FFO et excuse-moi... il était tard et Daniel m'avait donné un
dernier coup de pouce dans un autre post... honte à moi!
Alors je rends à FFO cet hommage concernant ce projet, avec le béotien que
je suis!
à plus
Greg
"Greg" <debutant@free.fr> a écrit dans le message de
news:9C5E864C-C572-42B3-BD19-0220FEEE3222@microsoft.com...
Bonsoir à tous et en particulier à Daniel qui m'a bien coacher sur ce coup
là!
Alors, voilà le code final si ça intéresse quelqu'un. Les dernières modifs
permettent de s'adapter à n'importe quelle ligne, de travailler sur la
ligne active:
Sub Créer_Lien()
Chemin = "C:UsersuserDesktopessai2"
ChDrive (C)
ChDir (Chemin)
Source = Application.GetOpenFilename()
If Source <> "Faux" Then
Nom = Cells(ActiveCell.Row, 2) & ".xls"
ActiveSheet.Hyperlinks.Add Anchor:Îlls(ActiveCell.Row, 4), Address:= _
Chemin & Nom, TextToDisplay:= _
Cells(ActiveCell.Row, 4) & "X"
Workbooks.Open (Source)
ActiveWorkbook.SaveAs (Chemin & Nom)
End If
End Sub
Un dernier grand merci à Daniel
à plus
Greg
NB: Je viens de me commander 3 bouquins pour mieux maîtriser le VBA...
Mais je crois que j'aurai encore longtemps besoin de vous...
"Greg" <debutant@free.fr> a écrit dans le message de
news:99DB368A-80AD-4EED-A29C-DAC84CBA7A3F@microsoft.com...
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir
que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" <FFO@discussions.microsoft.com> a écrit dans le message de
news:748356E5-6518-457B-B7EC-09FA3D6D2896@microsoft.com...
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé
par le
code soit en doublecliquant dessus, soit par Fichier/ouvrir de
l'application
Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant
car
ouvert par le code) quel nom porte t'il vue d'Excel
Bonjour FFO et excuse-moi... il était tard et Daniel m'avait donné un dernier coup de pouce dans un autre post... honte à moi!
Alors je rends à FFO cet hommage concernant ce projet, avec le béotien que je suis!
à plus
Greg
"Greg" a écrit dans le message de news:
Bonsoir à tous et en particulier à Daniel qui m'a bien coacher sur ce coup là!
Alors, voilà le code final si ça intéresse quelqu'un. Les dernières modifs permettent de s'adapter à n'importe quelle ligne, de travailler sur la ligne active:
Sub Créer_Lien()
Chemin = "C:UsersuserDesktopessai2" ChDrive (C) ChDir (Chemin) Source = Application.GetOpenFilename() If Source <> "Faux" Then Nom = Cells(ActiveCell.Row, 2) & ".xls" ActiveSheet.Hyperlinks.Add Anchor:Îlls(ActiveCell.Row, 4), Address:= _ Chemin & Nom, TextToDisplay:= _ Cells(ActiveCell.Row, 4) & "X" Workbooks.Open (Source) ActiveWorkbook.SaveAs (Chemin & Nom) End If
End Sub
Un dernier grand merci à Daniel
à plus
Greg
NB: Je viens de me commander 3 bouquins pour mieux maîtriser le VBA... Mais je crois que j'aurai encore longtemps besoin de vous...
"Greg" a écrit dans le message de news:
Rebonjour,
Dans les 3 cas, vu d'Excel, le fichier se nomme "S1". Je viens de voir que tu avais envoyé un nouveau code. Je vais essayer de ce pas.
Greg
"FFO" a écrit dans le message de news:
Rebonjour à toi
Peux tu me dire lorsque tu ouvres le fichier S1.xls nouvellement créé par le code soit en doublecliquant dessus, soit par Fichier/ouvrir de l'application Excel soit en activant le lien Hypertexte (l'ayant refermé au paravant car ouvert par le code) quel nom porte t'il vue d'Excel
Merci de ta réponse avec les 3 manières décrites
FFO
Rebonjour Greg
Rassures toi je ne t'en veux point et Daniel compte tenu de toutes ses implications mèrite tes remerciements même sur ce post
A bientôt sans doute !!!!!
Rebonjour Greg
Rassures toi je ne t'en veux point et Daniel compte tenu de toutes ses
implications mèrite tes remerciements même sur ce post
Bonjour. Je pense que tu les pris à juste titre pour toi. Daniel
Salut Daniel Tu as du penser trés fort et m'inspirer grandement pour sortir la potion miracle Ces remerciements ne sont pas anodin Profites en !!!!
LSteph
Comme quoi ceux qui pensent d'abord à apporter...
Mes amitiés à FFO et Daniel au terme de cette active journée.. ..j'ai attendu que cet orage passe un peu outre mon vaillant matériel qui tient malgré tout avec foi mais n'aurait pas sans doute pas résisté si je l'avais laissé branché.
@+
-- lSteph
FFO a écrit :
Rebonjour Greg
Rassures toi je ne t'en veux point et Daniel compte tenu de toutes ses implications mèrite tes remerciements même sur ce post
A bientôt sans doute !!!!!
Comme quoi ceux qui pensent d'abord à apporter...
Mes amitiés à FFO et Daniel au terme de cette active journée..
..j'ai attendu que cet orage passe un peu
outre mon vaillant matériel qui tient malgré tout avec foi
mais n'aurait pas sans doute pas résisté si je l'avais laissé branché.
@+
--
lSteph
FFO a écrit :
Rebonjour Greg
Rassures toi je ne t'en veux point et Daniel compte tenu de toutes ses
implications mèrite tes remerciements même sur ce post
Mes amitiés à FFO et Daniel au terme de cette active journée.. ..j'ai attendu que cet orage passe un peu outre mon vaillant matériel qui tient malgré tout avec foi mais n'aurait pas sans doute pas résisté si je l'avais laissé branché.
@+
-- lSteph
FFO a écrit :
Rebonjour Greg
Rassures toi je ne t'en veux point et Daniel compte tenu de toutes ses implications mèrite tes remerciements même sur ce post