VBA/Excel - Constantes Chemin
Résolu
PleaseCallMe
-
Amnesic Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Amnesic Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'aimerais savoir s'il est possible de créer des constantes en utilisant ce type de commande :
Application.GetOpenFilename("Nom fichier,*.xls")
Je sais que pour une constante il faut la déclare avec Const mais ca ne fonctionne pas avec ceci.
Mais j'aimerais qu'il se souvienne de quel chemin du répertoire l'utilisateur a choisi pour ouvrir le fichier!
J'aimerais savoir s'il est possible de créer des constantes en utilisant ce type de commande :
Application.GetOpenFilename("Nom fichier,*.xls")
Je sais que pour une constante il faut la déclare avec Const mais ca ne fonctionne pas avec ceci.
Mais j'aimerais qu'il se souvienne de quel chemin du répertoire l'utilisateur a choisi pour ouvrir le fichier!
A voir également:
- VBA/Excel - Constantes Chemin
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
6 réponses
Salut,
tu ne peux pas affecter une valeur à une constante autrement qu'en la saisissant dans ton code. A partir du moment ou l'utilisateur fait un choix (avec GetOpenFileName, par exemple), ç'est forcément une variable. Tu peux eventuellement déclarer ta variable publique, en utilisant Public à la place de Dim, ce qui étend sa portée à l'ensemble des procédures.
Sinon, tu peux aussi mémoriser ton chemin d'accès en l'ecrivant dans une cellule de ton fichier et ainsi le récupérer n'importe quand.
A+
tu ne peux pas affecter une valeur à une constante autrement qu'en la saisissant dans ton code. A partir du moment ou l'utilisateur fait un choix (avec GetOpenFileName, par exemple), ç'est forcément une variable. Tu peux eventuellement déclarer ta variable publique, en utilisant Public à la place de Dim, ce qui étend sa portée à l'ensemble des procédures.
Sinon, tu peux aussi mémoriser ton chemin d'accès en l'ecrivant dans une cellule de ton fichier et ainsi le récupérer n'importe quand.
A+
Merci pour cette précision.
Mais est-il possible de mémoriser le chemin d'une quelqueconque facon?
Car Public ne marche pas a l'intérieur d'un Sub, ça revient plus ou moins à un Const.
Mais est-il possible de mémoriser le chemin d'une quelqueconque facon?
Car Public ne marche pas a l'intérieur d'un Sub, ça revient plus ou moins à un Const.
Petite précision supplémentaire, j'ai crée une Sub qui copie le chemin dans une cellule est-il possible de recuperer cette valeur afin d'en faire une constante, ou du moins une valeur qu'il est possible d'utiliser dans tous les Sub ?
tu peux récupérer le chemin dans une variable de type String en écrivant
LaVariable = Workbooks("NomClasseur").Sheets("NomFeuille").Range("A1").Value
LaVariable = Workbooks("NomClasseur").Sheets("NomFeuille").Range("A1").Value
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
S'il s'agit de plusieurs procédures Sub imbriquées (l'une appelant la suivante) dans le même projet, tu conserveras la valeur de ta variable si elle est déclarée publique.
Si tu lances toi-même plusieurs procédures, il faut que tu ré-affectes la valeur à ta variable (cf. Post 4) au début de chacune de tes procédures. Ca n'empêche pas de déclarer ta variable en Public, ça permet de ne la déclarer qu'une seule fois dans un des modules.
A+
Si tu lances toi-même plusieurs procédures, il faut que tu ré-affectes la valeur à ta variable (cf. Post 4) au début de chacune de tes procédures. Ca n'empêche pas de déclarer ta variable en Public, ça permet de ne la déclarer qu'une seule fois dans un des modules.
A+