Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

passage d'un argument d'une macro à une autre

5 réponses
Avatar
mireille
Bonjour à tous,

J'ai besoin d'aide pour les 2 points suivants :

1/ l'utilisateur clique sur le bouton OPEN RAG FILE
Il doit pouvoir selectionner un fichier Excel qui sera utilisé dans l'étape
2 (i.e. le nom et le chemin d'accès du fichier doit être "mémorisés" par
Excel).
Comment faire pour qu'il puisse sélectionner le fichier dans une fenêtre du
genre de celle de Open du Menu File ?
Tous les fichiers sont dans un dossier intitulé RAG.

2/ l'utilisateur clique sur le bouton CREATE IVP TABLE et execute la macro
Main qui appelle les subs CreateData et IVP_Table.
Sub Main()
CreateData
IVP_Table
End Sub
Mais, CreateData et IVP_Table doivent s'exécuter sur le fichier selectionné
à l'étape 1. Comment faire ???

Merci pour votre aide,
Mireille

5 réponses

Avatar
FFO
Salut mireille
Ces quelques lignes récupèrent le chemin d'un fichier sélectionné dans une
boîte de dialogue prépositionnée sur un répertoire décrit par la ligne :

ChDir "C:Chemin"

Le code :

ChDrive ("C")
ChDir "C:Chemin"
cheminfichier = Application.GetOpenFilename("(*.xls),")

Celà devrait te convenir
Dis moi !!!!
Avatar
Daniel.C
Bonjour.
Pour le point n°2, déclare "cheminfichier" de la macro de FFO en tant
que variable publique dans un module standard :
Public cheminfichier as string
Tu peux alors utiliser cette variable dans les macros CreateData et
IVP_Table.
Cordialement.
Daniel

Bonjour à tous,

J'ai besoin d'aide pour les 2 points suivants :

1/ l'utilisateur clique sur le bouton OPEN RAG FILE
Il doit pouvoir selectionner un fichier Excel qui sera utilisé dans l'étape
2 (i.e. le nom et le chemin d'accès du fichier doit être "mémorisés" par
Excel).
Comment faire pour qu'il puisse sélectionner le fichier dans une fenêtre du
genre de celle de Open du Menu File ?
Tous les fichiers sont dans un dossier intitulé RAG.

2/ l'utilisateur clique sur le bouton CREATE IVP TABLE et execute la macro
Main qui appelle les subs CreateData et IVP_Table.
Sub Main()
CreateData
IVP_Table
End Sub
Mais, CreateData et IVP_Table doivent s'exécuter sur le fichier selectionné
à l'étape 1. Comment faire ???

Merci pour votre aide,
Mireille


Avatar
mireille
Bonjour FFO,

J'ai utilisé ton code dans le Sub ci-dessous :

Sub Open_File()
ChDrive ("C")
ChDir "C:UsersOlivierDesktopMission SEGL Mar 2009SEGL.1"
cheminfichier = Application.GetOpenFilename("(*.xls),")
End Sub

Maintenant, comment faire pour que le fichier que je selectionne dans la
fenêtre Open soit utilisé dans une autre macro ??
C'était la 2ème partie de ma question.

Merci !

"FFO" a écrit :

Salut mireille
Ces quelques lignes récupèrent le chemin d'un fichier sélectionné dans une
boîte de dialogue prépositionnée sur un répertoire décrit par la ligne :

ChDir "C:Chemin"

Le code :

ChDrive ("C")
ChDir "C:Chemin"
cheminfichier = Application.GetOpenFilename("(*.xls),")

Celà devrait te convenir
Dis moi !!!!



Avatar
FFO
Rebonjour mireille

Daniel a répondu à cette 2° étape
Effectivement j'ai omis de le spécifier dans ma réponse
Il faut comme il le dit déclarer la donnée cheminfichier en tant que
variable publique

Dans le module de la macro en tout début tu mets :

Public cheminfichier

Puis le code Sub Open_File()
Puis les autres codes

Celà devrait fonctionner
Dis moi !!!!
Avatar
mireille
Merci à vous FFO et Daniel.C !
J'ai réussi à faire ce que je voulais après avoir un peu tâtonné, j'avoue !

UN GRAND MERCI !