VBA excel : problème :s

rorotator -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je souhaiterais avoir un petit coup de pouce : je travaille actuellement sur un petit logiciel en VBA sous excel 2007. Ce petit logiciel ne sert qu'à faire l'interface avec l'utilisateur, et son but est de pouvoir d'un simple clic sur un bouton de ce userform ouvrir la page excel correspondante. Jusque la rien de compliqué =)

Cependant me voilà devant un problème de taille, vu que je ne suis pas expert en programmation. Je souhaiterais que mon userform puisse ouvrir les pages excels quelque soit l'utilisateur, le pc ou l'endroit où il est mis; je m'explique :

Normalement, la commande pour ouvrir à partir d'un bouton d'un userform est du type :

Workbooks.Open Filename:="C:\Users\Maxou\Desktop\Metrologie\Données\DPI_800.xls"
Sheets("Index").Select

Cela fonctionne à merveille. Cependant, si je donne le dossier Metrologie à quelqu'un et qu'il le met sur son pc, forcément son nom d'utilisateur ne serap as le meme, et le lieu d'ouverture du fichier aussi. Jespère que je ne suis pas trop flou ^^

Je souhaiterais avoir de l'aide sur ce point, car je souhaite de manière relativement simple pouvoir avoir un code qui irait pourquoi pas chercher automatique le nom d'utilisateur ou autre.

Est-ce possible d'avoir un code qui va chercher systématiquement dans le dossier "Metrologie" par exemple? car en fct du lieu de ce dossier, l'exection ne marche bien evidemment plus.

Bref merci de votre aide et bnne aprem midi à tous !! =P
A voir également:

3 réponses

Migou76 Messages postés 847 Date d'inscription   Statut Membre Dernière intervention   20
 
Bonjour,

Pour cela, il faut déplacer le classeur à un endroit accessible à tous. Un fichier commun ou public.

Lorsque vous l'aurez trouvé, il vous suffira d'écrire ce nouveau lien à la place de l'ancien. Par exemple
Workbooks.Open Filename:="C:Public/Desktop\Metrologie\Données\DPI_800.xls"Sheets("Index").Select

Ceci ne fonctionnera que si vous travailler sur site avec un serveur commun. Si ce n'est pas le cas, je passe la main.
0
Paf
 
bonjour,

pour récupérer le nom de l'utilisateur sous Windows XP et excel 2003:

Utilisateur = Environ("UserName")  
Workbooks.Open Filename:="C:\Users\" & Utilisateur & "\Desktop\Metrologie\Données\DPI_800.xls" 

Maintenant, rien ne permet de savoir si le classeur à ouvrir est bien au bon endroit !

Bonne suite
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonjour

recherche du ssdossier semi-auto à chaque nouvelle installation ou localisation de DPI_800et indépendante du nom d'utilisateurs

https://www.cjoint.com/?3GrlR5i5wl8
0