|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Nombre de jours du mois. [ Archives Visual Basic / VBA ] (alikote)
Informations & options pour cette discussion
|
vendredi 5 août 2005 à 22:42:14 |
Nombre de jours du mois.

alikote
|
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. Merci de votre réaction.
|
|
|
|
vendredi 5 août 2005 à 23:00:27 |
Re : Nombre de jours du mois.

Gobillot
|
Dim année As Integer
Dim mois As Integer
mois = 8
année = 2005
MsgBox (DateSerial(année, mois + 1, 1) - DateSerial(année, mois, 1))
Daniel
|
|
|
|
vendredi 5 août 2005 à 23:07:17 |
Re : Nombre de jours du mois.

frop01
|
Voici 4 fonctions qui permettent de connaître le nombre de jours d'un mois.
A vous de choisir celle qui vous convient le mieux :
Public Function DaysInMonth(ByVal nMonth As Integer, ByVal nYear
As Integer) As Integer
DaysInMonth = Day(DateAdd("d", -1, DateAdd("m",
1, DateSerial(nYear, nMonth, 1))))
End Function
Public Function DaysInMonth(ByVal nMonth As Integer, ByVal nYear As Integer) As
Integer
DaysInMonth = Day(DateSerial(nYear, nMonth + 1, 0))
End Function
Public Function DaysInMonth(ByVal nMonth As Integer, ByVal
nYear As Integer) As Integer
If nMonth = 12 Then
DaysInMonth = Day(DateSerial(nYear +
1, 1, 1) - 1)
Else
DaysInMonth = Day(DateSerial(nYear,
nMonth + 1, 1) - 1)
End If
End Function
Public Function DaysInMonth(ByVal nMonth As Long, ByVal nYear As Long) As Long
Select Case nMonth
Case 2
If isLeapYear(nYear)
Then
DaysInMonth = 29
Else
DaysInMonth = 28
End If
Case 4, 6, 9, 11
DaysInMonth =
30
Case Else
DaysInMonth =
31
End Select
End Function
*************
bibliographie : http://faq.vb.free.fr/index.php?question=84
PS: Si votre problème est résolu, prière de bien vouloir clôturer votre message par une réponse acceptée !
|
|
|
|
vendredi 5 août 2005 à 23:08:59 |
Re : Nombre de jours du mois.

dragon
|
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 -------------------------------------------------
|
|
|
|
vendredi 5 août 2005 à 23:26:18 |
Re : Nombre de jours du mois.

jack
|
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 Gollibot, 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
|
|
|
|
vendredi 5 août 2005 à 23:47:02 |
Re : Nombre de jours du mois.

dragon
|
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 -------------------------------------------------
|
|
|
|
samedi 6 août 2005 à 12:15:37 |
Re : Nombre de jours du mois.

alikote
|
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
|
|
|
|
samedi 6 août 2005 à 13:51:22 |
Re : Nombre de jours du mois.

frop01
|
j'avais dit 4 fonctions et j'ai pas mis la fontion IsLeapYear.
Sinon pour cette fonction que tu doit la déclarer !!
elle retourne si l'année est bisextile ou non !
peut-etre parcequ'elle manque la valeur de retour (As Boolean):
Public Function isLeapYear(ByVal nYear As Long) As Boolean
isLeapYear = ((nYear Mod 4 = 0) And (nYear Mod 100 <> 0)) Or (nYear Mod 400 = 0)
End Function
PS: Si votre problème est résolu, prière de bien vouloir clôturer votre message par une réponse acceptée !
|
|
|
|
lundi 8 août 2005 à 19:51:21 |
Re : Nombre de jours du mois.

alikote
|
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
|
|
|
Cette discussion est classé dans : nombre, excel, mois, jours
Répondre à ce message
Sujets en rapport avec ce message
nombre d'années de mois et jours entre 2 dates [ par FloZix ]
J'ai besoin de faire un prog qui calcul le nbre d'années de mois et de jours qu'il y a entre deux dates mais je ne sais pas comment faire.J'attend vot
Date (inversion des jours et des mois) [ par clamor ]
Salut, Voilà mon pb. J’essai de faire un prog sur VBA. J’ai dans
Convertir nombre de jours en année, mois et jours [ par mehdiyou ]
salut tout le monde y'aurai t il quelqu'un qui pourrait me donner une fonction qui permet de convertir un nombre de jours en année,mois et jour.(Exp:
Fonction Pair en vb [ par tortuegenie ]
Bonjour à tous,j' ai un tout petit souciJ'utilise Excel et vb pour un programme.Dans Excel il existe une fonction PAIR(nombre) qui arrondit un nombre
excel format nombre et format texte [ par chaudier37 ]
bonjour,quelle est la syntaxe vba pour convertir un nombre texte en nombre ? ex : tva. écrit par vba dans un tableau excel qui se met en texte et non
sauvegarde le premier du mois vba excel [ par bakalai ]
Bonjour, Je cherche a effectuer une sauvegarde d'un fichier excel dans un nouveau repertoire et aves un nouveau nom tous les prmiers du mois.J'ai pu
Renomer une XLA [ par ccartier ]
SalutD'un cote, j'ai une grand nombre de feuilles Excel qui dependent d'une xla, MyApp1.xla. D'un autre cote, j'ai un autre grand nombre de feuilles E
Erreur 1004 VB [ par ptitelili059 ]
Bonsoir à tousVoilà j'ai un petit programme qui me liste tous le contenu de ma colonne mais quand je lance le programme, j'ai l'erreur suivante : "Err
problème sur format cellule excel [ par eastpeople ]
Bonjour à tous, mon problème est que dans un userform je demande d'entré un nombre numérique dans un txtbox cette valeur va ensuite se mettre dans une
Nombre de valeur identique dans un champ [ par grantourismo ]
Bonjour,Dans une macro Excel, je voudrais compter le nombre de cellules identiques à une autre dans un champ.Dans Excel cette fonction est nb.si(a1:a2
Livres en rapport
|
Téléchargements
Logiciels à télécharger sur le même thème :
|