Code 1:
Sub TestDate()
If IsDate(ActiveCell) Then
MsgBox "Is a date"
Else: MsgBox "Is not a date"
End If
End Sub
Code 2:
Function Saison(MaDate As Date) As String
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison =3D "Hiver"
Case 321 To 620
Saison =3D "Printemps"
Case 621 To 920
Saison =3D "Et=E9"
Case 921 To 1220
Saison =3D "Automne"
Case Else
End Select
Else: Saison =3D "Date invalide!"
End If
End Function
Le premier code fonctionne parfaitement, =E9galement dans le=20
cas o=F9 la cellule active n'est pas une date. En revanche,=20
dans le second, si l'argument de la fonction n'est pas une=20
date (ex: date au format General), ce n'est pas le cas.=20
Quelqu'un parmi vous voit-il pourquoi?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
CAP2
Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date, sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If
End Function
Ca marche ?
CAP2
"Pascal" a écrit dans le message de news: 980a01c48686$3ccb69c0$ Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1: Sub TestDate() If IsDate(ActiveCell) Then MsgBox "Is a date" Else: MsgBox "Is not a date" End If End Sub
Code 2: Function Saison(MaDate As Date) As String If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If End Function
Le premier code fonctionne parfaitement, également dans le cas où la cellule active n'est pas une date. En revanche, dans le second, si l'argument de la fonction n'est pas une date (ex: date au format General), ce n'est pas le cas. Quelqu'un parmi vous voit-il pourquoi?
Merci pour vos réponses et bien à vous,
Pascal.
Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison = "Hiver"
Case 321 To 620
Saison = "Printemps"
Case 621 To 920
Saison = "Eté"
Case 921 To 1220
Saison = "Automne"
Case Else
End Select
Else: Saison = "Date invalide!"
End If
End Function
Ca marche ?
CAP2
"Pascal" <anonymous@discussions.microsoft.com> a écrit dans le message de
news: 980a01c48686$3ccb69c0$a501280a@phx.gbl...
Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1:
Sub TestDate()
If IsDate(ActiveCell) Then
MsgBox "Is a date"
Else: MsgBox "Is not a date"
End If
End Sub
Code 2:
Function Saison(MaDate As Date) As String
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison = "Hiver"
Case 321 To 620
Saison = "Printemps"
Case 621 To 920
Saison = "Eté"
Case 921 To 1220
Saison = "Automne"
Case Else
End Select
Else: Saison = "Date invalide!"
End If
End Function
Le premier code fonctionne parfaitement, également dans le
cas où la cellule active n'est pas une date. En revanche,
dans le second, si l'argument de la fonction n'est pas une
date (ex: date au format General), ce n'est pas le cas.
Quelqu'un parmi vous voit-il pourquoi?
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date, sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If
End Function
Ca marche ?
CAP2
"Pascal" a écrit dans le message de news: 980a01c48686$3ccb69c0$ Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1: Sub TestDate() If IsDate(ActiveCell) Then MsgBox "Is a date" Else: MsgBox "Is not a date" End If End Sub
Code 2: Function Saison(MaDate As Date) As String If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If End Function
Le premier code fonctionne parfaitement, également dans le cas où la cellule active n'est pas une date. En revanche, dans le second, si l'argument de la fonction n'est pas une date (ex: date au format General), ce n'est pas le cas. Quelqu'un parmi vous voit-il pourquoi?
Merci pour vos réponses et bien à vous,
Pascal.
Pascal
Salut CAP2,
Ca marche super! Comme quoi, VBA a encore beaucoup de secrets pour moi! Grand merci!
Pascal.
-----Message d'origine----- Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If
End Function
Ca marche ?
CAP2
"Pascal" a écrit dans le message de
news: 980a01c48686$3ccb69c0$ Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1: Sub TestDate() If IsDate(ActiveCell) Then MsgBox "Is a date" Else: MsgBox "Is not a date" End If End Sub
Code 2: Function Saison(MaDate As Date) As String If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If End Function
Le premier code fonctionne parfaitement, également dans le cas où la cellule active n'est pas une date. En revanche, dans le second, si l'argument de la fonction n'est pas une date (ex: date au format General), ce n'est pas le cas. Quelqu'un parmi vous voit-il pourquoi?
Merci pour vos réponses et bien à vous,
Pascal.
.
Salut CAP2,
Ca marche super! Comme quoi, VBA a encore beaucoup de
secrets pour moi!
Grand merci!
Pascal.
-----Message d'origine-----
Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit
être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction
considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison = "Hiver"
Case 321 To 620
Saison = "Printemps"
Case 621 To 920
Saison = "Eté"
Case 921 To 1220
Saison = "Automne"
Case Else
End Select
Else: Saison = "Date invalide!"
End If
End Function
Ca marche ?
CAP2
"Pascal" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news: 980a01c48686$3ccb69c0$a501280a@phx.gbl...
Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1:
Sub TestDate()
If IsDate(ActiveCell) Then
MsgBox "Is a date"
Else: MsgBox "Is not a date"
End If
End Sub
Code 2:
Function Saison(MaDate As Date) As String
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison = "Hiver"
Case 321 To 620
Saison = "Printemps"
Case 621 To 920
Saison = "Eté"
Case 921 To 1220
Saison = "Automne"
Case Else
End Select
Else: Saison = "Date invalide!"
End If
End Function
Le premier code fonctionne parfaitement, également dans le
cas où la cellule active n'est pas une date. En revanche,
dans le second, si l'argument de la fonction n'est pas une
date (ex: date au format General), ce n'est pas le cas.
Quelqu'un parmi vous voit-il pourquoi?
Ca marche super! Comme quoi, VBA a encore beaucoup de secrets pour moi! Grand merci!
Pascal.
-----Message d'origine----- Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If
End Function
Ca marche ?
CAP2
"Pascal" a écrit dans le message de
news: 980a01c48686$3ccb69c0$ Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1: Sub TestDate() If IsDate(ActiveCell) Then MsgBox "Is a date" Else: MsgBox "Is not a date" End If End Sub
Code 2: Function Saison(MaDate As Date) As String If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If End Function
Le premier code fonctionne parfaitement, également dans le cas où la cellule active n'est pas une date. En revanche, dans le second, si l'argument de la fonction n'est pas une date (ex: date au format General), ce n'est pas le cas. Quelqu'un parmi vous voit-il pourquoi?
Merci pour vos réponses et bien à vous,
Pascal.
.
CAP2
Avec plaisir ;o))
CAP2
"Pascal" a écrit dans le message de news: 28cd01c4868c$85799e20$ Salut CAP2,
Ca marche super! Comme quoi, VBA a encore beaucoup de secrets pour moi! Grand merci!
Pascal.
-----Message d'origine----- Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If
End Function
Ca marche ?
CAP2
"Pascal" a écrit dans le message de
news: 980a01c48686$3ccb69c0$ Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1: Sub TestDate() If IsDate(ActiveCell) Then MsgBox "Is a date" Else: MsgBox "Is not a date" End If End Sub
Code 2: Function Saison(MaDate As Date) As String If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If End Function
Le premier code fonctionne parfaitement, également dans le cas où la cellule active n'est pas une date. En revanche, dans le second, si l'argument de la fonction n'est pas une date (ex: date au format General), ce n'est pas le cas. Quelqu'un parmi vous voit-il pourquoi?
Merci pour vos réponses et bien à vous,
Pascal.
.
Avec plaisir ;o))
CAP2
"Pascal" <anonymous@discussions.microsoft.com> a écrit dans le message de
news: 28cd01c4868c$85799e20$a301280a@phx.gbl...
Salut CAP2,
Ca marche super! Comme quoi, VBA a encore beaucoup de
secrets pour moi!
Grand merci!
Pascal.
-----Message d'origine-----
Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit
être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction
considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison = "Hiver"
Case 321 To 620
Saison = "Printemps"
Case 621 To 920
Saison = "Eté"
Case 921 To 1220
Saison = "Automne"
Case Else
End Select
Else: Saison = "Date invalide!"
End If
End Function
Ca marche ?
CAP2
"Pascal" <anonymous@discussions.microsoft.com> a écrit
dans le message de
news: 980a01c48686$3ccb69c0$a501280a@phx.gbl...
Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1:
Sub TestDate()
If IsDate(ActiveCell) Then
MsgBox "Is a date"
Else: MsgBox "Is not a date"
End If
End Sub
Code 2:
Function Saison(MaDate As Date) As String
If IsDate(MaDate) Then
Select Case Format(MaDate, "mmdd")
Case 11 To 320, 1221 To 1231
Saison = "Hiver"
Case 321 To 620
Saison = "Printemps"
Case 621 To 920
Saison = "Eté"
Case 921 To 1220
Saison = "Automne"
Case Else
End Select
Else: Saison = "Date invalide!"
End If
End Function
Le premier code fonctionne parfaitement, également dans le
cas où la cellule active n'est pas une date. En revanche,
dans le second, si l'argument de la fonction n'est pas une
date (ex: date au format General), ce n'est pas le cas.
Quelqu'un parmi vous voit-il pourquoi?
"Pascal" a écrit dans le message de news: 28cd01c4868c$85799e20$ Salut CAP2,
Ca marche super! Comme quoi, VBA a encore beaucoup de secrets pour moi! Grand merci!
Pascal.
-----Message d'origine----- Salut Pascal,
essaie ça (ne pas déclarer que ton argument MaDate doit être de type Date,
sinon dès que ce ne sera pas le cas, ta fonction considèrera ton argument
comme non valide et renverra #VALEUR!) :
Function Saison(MaDate)
If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If
End Function
Ca marche ?
CAP2
"Pascal" a écrit dans le message de
news: 980a01c48686$3ccb69c0$ Bonjour à toutes et à tous,
Voici 2 bouts de code:
Code 1: Sub TestDate() If IsDate(ActiveCell) Then MsgBox "Is a date" Else: MsgBox "Is not a date" End If End Sub
Code 2: Function Saison(MaDate As Date) As String If IsDate(MaDate) Then Select Case Format(MaDate, "mmdd") Case 11 To 320, 1221 To 1231 Saison = "Hiver" Case 321 To 620 Saison = "Printemps" Case 621 To 920 Saison = "Eté" Case 921 To 1220 Saison = "Automne" Case Else End Select Else: Saison = "Date invalide!" End If End Function
Le premier code fonctionne parfaitement, également dans le cas où la cellule active n'est pas une date. En revanche, dans le second, si l'argument de la fonction n'est pas une date (ex: date au format General), ce n'est pas le cas. Quelqu'un parmi vous voit-il pourquoi?