Macro pour Ouvrir un Fichier

  • Initiateur de la discussion masteur907
  • Date de début
M

masteur907

Guest
Bonjour à tous,

Ma question est la suivante:

Je possède plusieurs classeurs de 2 feuilles Excel dans un répertoire.
Tous les classeurs ont des noms différents correspondant à un code.

Je souhaite créer un classeur et y mettre une macro sous forme d'un bouton qui aura comme tâche d'ouvrir un classeur déterminé par son code dans une cellule de la feuille.

Exemple:

A3: 530 en appuyant sur le bouton de ma macro le classeur 530 va s'ouvrir.

Merci pour votre aide
 
Y

Yeahou

Guest
Bonjour masteur907, le forum

Oui c'est possible, mais ta demande manque un peu de précisions.
1-veux tu qu'un seul bouton puisse ouvrir un fichier parmi plusieurs ou désires tu que chaque cellule contenant un nom de fichier ait son propre bouton?
2-les codes seront stockés dans des cellules mais oû seront stockés les équivalences noms de fichiers, en dur dans le programme ou stockés dans une autre feuille, classeur, base de données, fichier texte?
3-l'utilisateur doit rentrer le code, choisir parmi la liste des codes disponibles ou choisir la cellule qui contient le code?
4-le chemin d'accés est il variable, stocké en dur, défini par l'utilisateur?

tout cela pour te dire qu'il vaut mieux être le plus précis possible surtout sur des problèmes d'interface oû les solutions sont multiples. a ce titre, un fichier exemple ne peut pas faire de mal.

A+
 
M

masteur907

Guest
Bonjour,

J'apporte un peut plus de précision sur mon projet.

Dans mon projet chaque classeur correspond un article. Tous sont stocké sous un répertoire. Chaque classeur est nommé par son code article. Mon souhait serait de créer une interface sous forme de classeur dans lequel l'utilisateur saisiera le code de l'article et cliquera sur un bouton ok par exemple pour ouvrir le classeur correspondant au code article saisi.

En espérant avoir apporté les informations nécessaire.
 
M

masteur907

Guest
J'ai finalement réussi à comprendre le principe seulement je vois deux problemes.

Le premier est qu'il faut renseigner dans A1 le num de l'article et le deuxième le chemin or j'ai beaucoup d'article ça me semble difficile à renseigner.

L'objectif est que lorsqu'on renseigne la messagebox Excel ouvre le fichier tout seul puisque le code de l'article = le nom du classeur.

EX: lors de la question de la boite dialogue article? je renseigne 53012146 et il va chercher le doc C:\mesdocuments\53042146.xl Sans avoir à rentré tout les chemins et toutes les références.

Je suis un peut embettant je sais mais bon si vous pouviez me dépanner j'apprécierai.
 
Y

Yeahou

Guest
Bonjour

Si tu avais répondu au point 2 ou précisé cela dés le départ, il n'y aurait pas eu de problème et cela aurait été plus simple. Voici la macro simplifiée. La variable stockage définit le dossier ou sont stockés les articles.

A+

Private Sub CommandButton1_Click()
Dim Num_Article As String, Stockage As String
'définir le répertoire de stockage des fichiers
Stockage = "C:\mes documents\"
'demande le numéro d'article
Num_Article = Application.InputBox(prompt:="Entrez le numéro d'article", Type:=2)
If Num_Article > "" Then
'teste l'existence du fichier avant de l'ouvrir
If Not (Dir$(Stockage & Num_Article & ".xls", vbDirectory) = "") Then
Workbooks.Open Filename:=Stockage & Num_Article & ".xls"
Else
MsgBox "Fichier " & Stockage & Num_Article & ".xls" & " non trouvé"
End If
End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 347
Messages
2 087 504
Membres
103 565
dernier inscrit
Fabien78