[[Excel VBA]]créer chemin entre macro feuille
Lila_35
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
La situation est :
d'une part un fichier MesMacros.xls où se trouve toutes mes macros et d'autre part un fichier MesFeuilles.xls où j'entre mes données et qui fait appel aux macros de MesMacros.xls.
Dans MesFeuilles.xls, il y a tous les mois de l'année (janvier, février, ... , décembre) avec trois boutons fesant appel aux macros plus une feuille (description) non visible par l'utilisateur où l'on stock des données.
C'est sur cette feuille, dans une cellule que je souhaite stocker le chemin de MesMacros.xls afin de ne pas avoir à re paramétrer tous les boutons pour chaque feuille.
Je dois utiliser l'afffectation suivante mais je ne sais pas où la traiter.
Chemin = ThisWorkbook.Path
Merci
La situation est :
d'une part un fichier MesMacros.xls où se trouve toutes mes macros et d'autre part un fichier MesFeuilles.xls où j'entre mes données et qui fait appel aux macros de MesMacros.xls.
Dans MesFeuilles.xls, il y a tous les mois de l'année (janvier, février, ... , décembre) avec trois boutons fesant appel aux macros plus une feuille (description) non visible par l'utilisateur où l'on stock des données.
C'est sur cette feuille, dans une cellule que je souhaite stocker le chemin de MesMacros.xls afin de ne pas avoir à re paramétrer tous les boutons pour chaque feuille.
Je dois utiliser l'afffectation suivante mais je ne sais pas où la traiter.
Chemin = ThisWorkbook.Path
Merci
A voir également:
- [[Excel VBA]]créer chemin entre macro feuille
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Créer liste déroulante excel - Guide
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer un lien pour partager des photos - Guide
6 réponses
si tonclasseurs.xls est dans le même dossier que macros.xls, les macros que je t'avais donné l'autre jour n'ont pas besoin d'indiquer le chemin si tu es situé dans ce dossier.
http://www.commentcamarche.net/forum/affich 12938476 vba excel selectionner un plage
ici, macros.xls peut être déplacé ailleurs sur le m^me poste et l'inscription automatique de son chemin dans la base de registre permet d'indiquer celui-ci dès que tu ouvres tonclasseur.xls
macro dans macros.xls
dans thisworkbook
-----
macro dans tesclasseurs.xls
</code>
http://www.commentcamarche.net/forum/affich 12938476 vba excel selectionner un plage
ici, macros.xls peut être déplacé ailleurs sur le m^me poste et l'inscription automatique de son chemin dans la base de registre permet d'indiquer celui-ci dès que tu ouvres tonclasseur.xls
macro dans macros.xls
dans thisworkbook
Private Sub Workbook_Open()
Dim chemin As String
chemin = ThisWorkbook.Path
'écriture dans HKey_current_user/software / VB and VBA Program settings
SaveSetting appname:="ccm", section:="lilas", key:="lieu", setting:=chemin
End Sub
dans module1
<code>Sub EffacedansRegistre()
On Error Resume Next
DeleteSetting "ccm"
End Sub
-----
macro dans tesclasseurs.xls
Private Sub Workbook_Open()
'lecture dans HKey_current_user/software / VB and VBA Program settings
Range("A1") = GetSetting(appname:="ccm", section:="lilas", key:="lieu")
End Sub
</code>
salut lila35
Hé,ho, laisse moi le temps de me réveiller!...
ci joint démo en utilisant la base de registres (HKey_current_user/software / VB and VBA Program settings)
https://www.cjoint.com/?gxk1dB0Dwf
après avoir télécharger dans un coin perdu de ton HD
tu lances macros.xls
tu fermes
tu lances classeur2 (pour tes classeurs de travail)
tu as le chemin de macros.xls en cellule A1; a toi d'adapter avec une variable publique
les macros sont dans thisworkbook et pour nettoyer la base de registre dans un module de macros.xls
Hé,ho, laisse moi le temps de me réveiller!...
ci joint démo en utilisant la base de registres (HKey_current_user/software / VB and VBA Program settings)
https://www.cjoint.com/?gxk1dB0Dwf
après avoir télécharger dans un coin perdu de ton HD
tu lances macros.xls
tu fermes
tu lances classeur2 (pour tes classeurs de travail)
tu as le chemin de macros.xls en cellule A1; a toi d'adapter avec une variable publique
les macros sont dans thisworkbook et pour nettoyer la base de registre dans un module de macros.xls
Bonjour michel_m,
Malheureusement, je ne peux pas télécharger ton fichier (restriction toujours là).
J'ai déjà un petit truc codé dans ThisWorkbook de MesFeuilles.xls :
C'est quoi
Malheureusement, je ne peux pas télécharger ton fichier (restriction toujours là).
J'ai déjà un petit truc codé dans ThisWorkbook de MesFeuilles.xls :
Private Sub Workbook_Open()
Dim chemin As String
Dim fichier As String
Dim nb_car As Integer
nb_car = Len(ThisWorkbook.Name)
chemin = Left(ThisWorkbook.Path, Len(ThisWorkbook.FullName) - nb_car)
chemin = chemin & "\MesMacros.xls"
End Sub
C'est quoi
ci joint démo en utilisant la base de registres (HKey_current_user/software / VB and VBA Program settings)?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ok super info michel_m.
Je ne suis pas sur que les utilisateurs aura les droits pour passer par la base de registre. N'y aurait il pas un autre moyen?
Sinon cette solution est très bien.
Merci pour ton aide.
Je ne suis pas sur que les utilisateurs aura les droits pour passer par la base de registre. N'y aurait il pas un autre moyen?
Sinon cette solution est très bien.
Merci pour ton aide.