Encore un probleme de dates en VB

Encore un probleme de dates en VB - VB/VBA/VBS - Programmation

Marsh Posté le 21-05-2002 à 14:39:26    

J'ai fais un programme en VB, qui me permet de gérer mes films.
Sur ce programme je souhaiterais y ajouter une fonctionnalité : pouvoir affiché les films dernièrement ajoutés à la liste.
 
Pour ce faire, dans ma base de donnée, j'ai une table FILM qui contient différentes info sur le film, dont sa date d'ajout.
Mon idée était de prendre la date du jour, et lui enlevé par exemple 20 jours. Suite à ce retrait, je disposerais d'une nouvelle date, qui me permettra de la comprarer avec celles présentes dans la base.
 
Quelqu'un peut-il m'aider ???

Reply

Marsh Posté le 21-05-2002 à 14:39:26   

Reply

Marsh Posté le 21-05-2002 à 14:45:24    

il me semble, en utilisant format, que tu peux soustraire un nombre à une date. Faut simplement préciser que ce nombre est un nombre de jour...
as tu lu la doc ? je pense qu'ils expliquent cela...
 
sinon, maintenant que j'y pense y'a une fonction qui s'appelle datediff, qui devrait remplir cette fonction.
Cherche plus d'info dans la doc...
 
 :hello:


---------------
Music|Market|Feed|Loom|DVD
Reply

Marsh Posté le 21-05-2002 à 14:47:48    

le probleme...c que j'ai aucune doc VB

Reply

Marsh Posté le 21-05-2002 à 14:52:49    

blueman_82 a écrit a écrit :

le probleme...c que j'ai aucune doc VB  




 
 
c con ça hein ?? :lol:  
 
allez
 
DATEDIFF
 
Renvoie une valeur de type Variant (Long) indiquant le nombre d'intervalles de temps entre deux dates données.
 
Syntaxe
 
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])
 
La syntaxe de la fonction DateDiff comprend les arguments nommés suivants :
 
Élément Description
interval Expression de chaîne correspondant à l'intervalle de temps utilisé pour calculer la différence entre date1 et date2.
date1, date2 De type Variant (Date), représentent les deux dates utilisées dans le calcul.
firstdayofweek Facultatif. Constante précisant le premier jour de la semaine. Si aucune valeur n'est précisée, la valeur par défaut est dimanche.
Firstweekofyear Facultatif. Constante précisant la première semaine de l'année. Si aucune valeur n'est précisée, la première semaine est par défaut celle du 1er janvier.
Valeurs
 
L'argument interval peut prendre les valeurs suivantes :
 
Valeur Description
aaaa Année
t Trimestre
m Mois
a Jour de l'année
j Jour
e Jour de la semaine
ee Semaine
h Heure
n Minute
s Seconde
L'argument firstdayofweek peut prendre les valeurs suivantes :
 
Constante Valeur Description
   
vbUseSystem 0 Utilise le paramètre de l?API NLS.
vbSunday 1 Dimanche (valeur par défaut)
vbMonday 2 Lundi
vbTuesday 3 Mardi
vbWednesday 4 Mercredi
vbThursday 5 Jeudi
vbFriday 6 Vendredi
vbSaturday 7 Samedi
L'argument Firstweekofyear peut prendre les valeurs suivantes :
 
Constante Valeur Description
   
vbUseSystem 0 Utilise le paramètre de l?API NLS.
vbFirstJan1 1 Commencer par la semaine du 1er janvier (valeur par défaut).
vbFirstFourDays 2 Commencer par la première semaine comportant au moins quatre jours dans l'année nouvelle.
vbFirstFullWeek 3 Commencer par la première semaine complète de l'année.
Remarques
 
Utilisez la fonction DateDiff pour déterminer le nombre d'intervalles de temps spécifiés entre deux dates. Par exemple, utilisez DateDiff pour calculer le nombre de jours entre deux dates ou le nombre de semaines entre la date d'aujourd'hui et la fin de l'année.
Pour calculer le nombre de jours entre date1 et date2, vous pouvez utiliser les valeurs Jour de l'année ("y" ) ou Jour ("d" ). Si l'argument interval est Jour de la semaine ("w" ), DateDiff renvoie le nombre de semaines entre les deux dates. Si date1 tombe un lundi, DateDiff calcule le nombre de lundi jusqu'à date2. La valeur date2 est prise en compte, mais pas la valeur date1. Si l'argument interval est Semaine ("ww" ), la fonction DateDiff renvoie le nombre de semaines calendaires entre les deux dates. Le nombre de dimanches entre date1 et date2 est calculé. DateDiff prend en compte date2 si cette date tombe un dimanche, mais pas date1, même s'il s'agit également d'un dimanche.
 
Si date1 est postérieure à date2, la fonction DateDiff renvoie un nombre négatif.
L'argument firstdayofweek a une incidence sur les calculs qui utilisent les symboles d?intervalle "w" et "ww".
Si date1 ou date2 est un littéral date, l'année spécifiée devient un élément permanent de la date. Toutefois, si date1 ou date2 apparaît entre guillemets (" " ) et si vous n'indiquez pas l'année, l'année en cours est insérée dans le code chaque fois que l'expression date1 ou date2 est évaluée. Vous pouvez ainsi écrire du code qui sera réutilisable au fil des années.
 
Lors de la comparaison des dates 31 décembre et 1er janvier de l'année suivante, DateDiff avec la valeur Année ("yyyy" ) renvoie 1, même si la différence est seulement d'un jour.


---------------
Music|Market|Feed|Loom|DVD
Reply

Marsh Posté le 21-05-2002 à 14:56:12    

je crois que ça ne solutionne pas mon probleme, because moi je veut par une soustraction entre un nombre et une date, et comme résultat, obtenir une date

Reply

Marsh Posté le 21-05-2002 à 14:59:57    

blueman_82 a écrit a écrit :

je crois que ça ne solutionne pas mon probleme, because moi je veut par une soustraction entre un nombre et une date, et comme résultat, obtenir une date  




 
je sais que c faisable, ms tu pourrais le faire autrement, en faisant la différence entre la date d"aujourdhui et la date que tu recherches, au lieu de faire une soustraction non ?
 
ou ptet n'ai je pas saisi ton problème ?... :sol:


---------------
Music|Market|Feed|Loom|DVD
Reply

Marsh Posté le 21-05-2002 à 15:06:22    

je te réexplique :
Je souhaite affiche les nouveaux films (cad publié les 20 derniers jours).
Pour déterminer si un film est récent... je prend la date du jour, à laquelle je soustrait 20 jours.
Avec la date obtenue après la soustraction, je fais une comparaison.
 
Ex:
Date du jour : 30/05/2002
Résultat de la soustraction : 10/05/2002
 
FILM
VANILLA SKY - 22/05/2002
TITANIC - 06/01/1999
 
Donc, lorsque je fais les comparaison, Vanilla Sky est un nouveau film puisque 22/05/2002 > 10/05/2002.
Mais pas TITANIC.
 
Est-ce que je me suis bien expliqué ?

Reply

Marsh Posté le 21-05-2002 à 15:11:29    

Ca fait lgtps que j'ai pas fait de vb mais t'as essayé tout bêtement :
 
dim d1 as date, d2 as date
d1 = "21/05/2002"
d2 = d1 - 1
 
J'en suis pas sur du tout mais je crois qu'avec ça d2 vaudra d1 moins 1 jour...
Dites moi si je dis n'importe quoi !!!  :heink:

Reply

Marsh Posté le 21-05-2002 à 15:14:55    

oopss....effectivement...je suis un gros blaireu qui cherche la complication !!!
Ca marche parfaitement ta méthode !!
 
En tout cas, merci à tous les deux pour votre aide.

Reply

Marsh Posté le 21-05-2002 à 15:40:12    

blueman_82 a écrit a écrit :

oopss....effectivement...je suis un gros blaireu qui cherche la complication !!!
Ca marche parfaitement ta méthode !!
 
En tout cas, merci à tous les deux pour votre aide.  




 
DE RIEN !!  ;)  :hello:  :jap:


---------------
Music|Market|Feed|Loom|DVD
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed