Bonjour, je suis à la recherche d'une solution pour exécuter une commande dos depuis un VBA.
Après une recherche sur le forum je n'ai rien trouvé de satisfaisant (mais je ne suis peut-être pas allé assez loin).
Bref, voici mon souci :
Je dispose d'un répertoire (.\2013\03 - mars par exemple) contenant des fichiers excel dont le nom est : RENxxyyzz.xls
xx = l’année sur 2 caratères que je récupère avec Mid(Date, 9, 2)
yy = le numéro de la semaine en cours que je récupère avec 3 lignes de code glanées sur le net (je le met plus bas)
zz = un numéro d'incrément (qui repart à zéro à chaque nouvelle semaine)
Je souhaite récupérer des infos contenues dans mes fichiers REN pour les intégrer dans un autre fichier excel (qui contient la macro que j'exécute).
Exemple de liste :
REN130943.xls
REN130944.xls
REN130945.xls
REN131001.xls
REN131002.xls
REN131003.xls
REN131101.xls
REN131102.xls
REN131103.xls
Méthode envisagée :
1 - Récupéré le numéro de la semaine pour n'avoir que l'incrément à traiter
2 - Faire la boucle :
For i = 43 to 45
récupérer les infos souhaitées depuis mon fichier mes fichiers REN1309i.xls vers mon fichier de synthèse
Passer au fichier REN* suivant
J'ai aussi penser à d'abord lister tous les numéro de semaine pour boucler dessus, puis faire une sous boucle pour les numéro d'incrément, mais je n'arrive pas à récupérer dans une variable le contenu de mon dossier (une fois faite la fonction mid() me permettra de tout découpé comme je le souhaite) genre avec un dir *.xls
J'ai placé un fichier de travail en pièce jointe.
Merci d'avance
Patmos,
-------------------------------------------------------
Récupération du ne numéro de la semaine en cours :
Dim nb_date_annee As Date
Dim num_semaine As Integer
nb_date_annee = DateValue("1 janvier " & (Year(Date)))
prem_date = nb_date_annee
num_semaine = Abs(Date - prem_date) / 7
msgbox num_semaine
-------------------------------------------------------
Après une recherche sur le forum je n'ai rien trouvé de satisfaisant (mais je ne suis peut-être pas allé assez loin).
Bref, voici mon souci :
Je dispose d'un répertoire (.\2013\03 - mars par exemple) contenant des fichiers excel dont le nom est : RENxxyyzz.xls
xx = l’année sur 2 caratères que je récupère avec Mid(Date, 9, 2)
yy = le numéro de la semaine en cours que je récupère avec 3 lignes de code glanées sur le net (je le met plus bas)
zz = un numéro d'incrément (qui repart à zéro à chaque nouvelle semaine)
Je souhaite récupérer des infos contenues dans mes fichiers REN pour les intégrer dans un autre fichier excel (qui contient la macro que j'exécute).
Exemple de liste :
REN130943.xls
REN130944.xls
REN130945.xls
REN131001.xls
REN131002.xls
REN131003.xls
REN131101.xls
REN131102.xls
REN131103.xls
Méthode envisagée :
1 - Récupéré le numéro de la semaine pour n'avoir que l'incrément à traiter
2 - Faire la boucle :
For i = 43 to 45
récupérer les infos souhaitées depuis mon fichier mes fichiers REN1309i.xls vers mon fichier de synthèse
Passer au fichier REN* suivant
J'ai aussi penser à d'abord lister tous les numéro de semaine pour boucler dessus, puis faire une sous boucle pour les numéro d'incrément, mais je n'arrive pas à récupérer dans une variable le contenu de mon dossier (une fois faite la fonction mid() me permettra de tout découpé comme je le souhaite) genre avec un dir *.xls
J'ai placé un fichier de travail en pièce jointe.
Merci d'avance
Patmos,
-------------------------------------------------------
Récupération du ne numéro de la semaine en cours :
Dim nb_date_annee As Date
Dim num_semaine As Integer
nb_date_annee = DateValue("1 janvier " & (Year(Date)))
prem_date = nb_date_annee
num_semaine = Abs(Date - prem_date) / 7
msgbox num_semaine
-------------------------------------------------------