|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre à l'essai
![]() Inscription : juillet 2009 Messages : 102 ![]() |
Bonjour,
Un bouton sur une feuille exécute plusieurs macro. Je récupère par ces macro des données d'un rapport quotidien. Je voudrais ajouter à ce bouton une macro (temporaire) pour récupérer les données venant des rapports antérieurs à la création de la macro. J'ai créé cette macro le 02/12/2011. J'aimerais faire en sorte que cette macro s'exécute aussi pour tous les rapports journaliers antérieurs. par exemple a partir du 01.01.2011 jusqu'a aujourd'hui. Est ce que cette boucle devrait fonctionner Code :
Afin de pouvoir utiliser la variable i pour aller chercher le rapport correspondant à la date, j'ai déclaré i comme une variable public avant la déclaration private sub dans la page du bouton et avant la première macro dans la page du module Le problème est que la variable est bien attribuée dans la page du bouton, mais n'est pas transmise dans la page du module. Dans le module, je vois i=00.00.00 et du coup il ne trouve pas le fichier. Pouvez vous m'aider à trouver mon erreur? Merci |
||
|
|
00
|
|
|
#2 | ||
|
Membre chevronné
![]() Architecte Inscription : mai 2002 Messages : 1 057 ![]() |
Les indices de boucles doivent être des valeurs numériques et je me méfie du transcodage de string en date.
Or, format produit un chaine de caractère. Pour éviter toute ambiguïté, je déclarerais explicitement les variables avec leur type. Cela devient : Code :
|
||
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : juillet 2009 Messages : 102 ![]() |
Re,
J'ai semble t il réglé le problème de variable public. J'ai supprimé la déclaration de Public i as date dans la feuille du bouton et l'info est bien transmise dans la feuille du module. Par contre j'ai un nouveau souci. Je me suis aperçu que dans mon nom de rapport quotidien la date est dans ce format : 01.01.2011 et non pas 01/01/2011. Du coup lorsqu'on arrive à i = "01.01.2011" j'ai une erreur d'exécution 13 incompatibilité de type. Pourquoi? J'imagine que ça a un rapport avec la boucle for. Mais du coup comment faire pour incrémenter une date correctement? |
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() Architecte Inscription : mai 2002 Messages : 1 057 ![]() |
Utilises la fonction replace
|
|
|
00
|
|
|
#5 | ||||
|
Membre à l'essai
![]() Inscription : juillet 2009 Messages : 102 ![]() |
Bonjour,
Pour reconnaitre mon fichier qui porte un nom comme "rapport du 01.01.2011.xls" je dois garder les points, puisque les / ne sont pas acceptés dans le nom de fichier. Voila à quoi ressemble mon code pour le bouton Code :
et le code dans le module Code :
Merci pour votre aide |
||||
|
|
00
|
|
|
#6 | ||
|
Membre chevronné
![]() Architecte Inscription : mai 2002 Messages : 1 057 ![]() |
Je supprimerais la déclaration externe de StDate que je passerais en paramètre dans ta procédure en déclarant celle-ciL'appel de cette procédure d'update serait
Code :
|
||
|
|
00
|
|
|
#7 |
|
Membre à l'essai
![]() Inscription : juillet 2009 Messages : 102 ![]() |
Ok merci, ça fonctionne bien
Par contre j'ai mis Sinon la date n'était pas incrémentée. Merci |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com