alikote
Messages postés6Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention13 février 2006
-
5 août 2005 à 22:42
alikote
Messages postés6Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention13 février 2006
-
8 août 2005 à 19:51
Je vous salue tous,
Voilà j'aime écrire des choses en VBA (Excel et/ou Word). J'ai besoin d'une procédure (ou méthode) ou fonction qui puisse me dire exactement le nombre de jours dans un certain mois d'une certaine année. J'en ai besoin dans une macro Excel.
Quelqu'un a du se frotter déjà à ce problème, j'en suis presque sûre.
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 20096 5 août 2005 à 23:08
la bonne vieille méthode. Marche toujours, n'importe quel année, n'importe quel mois, bisextile ou non
public function nbJourMois(mois as integer, annee as integer) as integer
return nbJourMois(mois,annee,31)
end function
private function nbJourMois(mois as integer, annee as integer, jour as integer) as integer
on error goto erreur
dim test as date
test = annee & "-" & mois & "-" & jour
nbJourMois = jour
exit function
erreur:
nbJourMois = nbJourMois(mois,annee,jour-1)
end function
-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 5 août 2005 à 23:26
Salut
Oui, en effet, c'est excellent cette idée Dragon.
Il y a aussi la méthode qui consiste à regarder le n° du jour qui précède le 1er jour du mois suivant.
Je crois que c'est ce que propose <STRIKE>Gollibot</STRIKE>, Gobillot, pardon
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
(je
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_dragon
Messages postés2336Date d'inscriptionsamedi 14 juillet 2001StatutMembreDernière intervention 5 mai 20096 5 août 2005 à 23:47
l'avantage de ma version, c,est qu'elle peut-être adapter dasn tout les languages. Une date fausse va nécessairement planter. donc si on ajoute la gestion d'erreur avec un on error en vb6.0 ou un try/catch en .net, ca va toujours fonctionner. Mais c,est pas comme qui dirait très propre comme code.
j'ai jamais tester voir si c'était plus rapide par contre. Faudrait tester la solution de drop01 et la mienne genre 100000 fois voir la différence en temps. Par contre, pour un débutant, ma façon est beaucoup plus simple a comprendre, malgré qu'elle soit récurcive (la fonction s'appelle elle même, jusqu'à ce qu'elle aille trouver la bonne réponse)
-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------
alikote
Messages postés6Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention13 février 2006 6 août 2005 à 12:15
Re-bonjour chers amis,
Merci à vous tous qui avez réagi à ma requête, merci aussi à ceux qui en avaient l'intention. J'ai testé toutes les réponses sur le mois de fév-2005. Elles ont toutes donné la bonne réponse à l'exception de la dernière fonction de frop01. Là j'ai le message qui indique que la fonction isLeapYear(nYear)n'est pas définie. Je pense que cette fonction n'est pas connue de Excel VBA et qu'il faut l'écrire.
Encore merci, la question peut-être close sauf si quelqu'un (en l'occurrence frop01) veut revoir le problème de la fonction isLeapYear(nYear).
Connaître, connaître; toujours connaître, mieux et plus, pour soi et les autres !!!
Ali C. KOTE
alikote
Messages postés6Date d'inscriptionjeudi 23 novembre 2000StatutMembreDernière intervention13 février 2006 8 août 2005 à 19:51
Bonjour,
Je reviens pour cette fois demander ceci:
Je veux créer un fichier d'aide pour une petite application que j'ai écrite en VBA (Excel). J'aimerais avoir une idée de la structure d'un tel fichier et comment je peux y faire référenc à partir de mon application.
Connaître, connaître; toujours connaître, mieux et plus, pour soi et pour les autres !!!
Ali C. KOTE