Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[access]Comparer une date entre 2 dates

alain105d, le dimanche 5 mars 2006 à 15:56:19
Bonjour a tous,
Comment comparer une [date d’entrée] encodée dans un sous formulaire(location) pour un chalet donné a une fourchette [date d’entrée] [date sortie] qui se trouve dans une table archive pour un même chalet.
Exemple : une réservation est faite et archivée dans la table archive (date d’entrée 07/02/06 et date de sortie 21/02/06 pour le chalet n°1)
A l’ouverture de mon formulaire location il est vide car les données ont été ajoutées a la table archive
Si je veux encoder une date d’entrée 14/02/06 et une date de sortie 28/02/06 pour le chalet n°1,c'est possible
Donc le chalet sera loué 2 fois en même temps pour la période du 14 au 21
Je voudrais bien interdire cette possibilité d’encodage
Quelqu’un a une idée ?
Merci de vos réponses
Répondre à alain105d  Signaler ce message aux modérateurs Aller au dernier message

1


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
zenon, le lundi 6 mars 2006 à 15:26:59
Salut,


Comme je te l'ai déjà dit, c'est ta structure qui te pose problème. Tu te compliques la vie inutilement...
Si tout (tes chalets réservés et non réservés) est dans la même table, il est très facile d'écrire une requête et de n'afficher que les dates libres. Avec ta structure, c'est beaucoup plus compliqué.
Tu peux utiliser la fonction DCount comme te l'a proposé HDU dans ton post précédent, si j'ai bon souvenir, pour tester si ta table archive est bien vide pour la date et le chalet considérés et renvoyer un MsgBox pour signaler qu'il est occupé mais ça risque de devenir lassant puisque tu ne peux pas afficher les dates libres...
Ou alors, tu prends le problème à l'envers et tu fondes ton sosu-formulaire sur la table archives pour afficher les dates occupées. Par exclusion, les autre seront libres...

Bon courage.
Répondre à zenon

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
alain105d, le lundi 6 mars 2006 à 16:53:56
Bonjour
Le problème que j’avais dans le post précédent est résolu
Il me reste le cas particulier que j’ai expliqué plus haut.
Si je fonde le sous formulaire sur la table archive(donc les dates occupées),cela n’empêchera pas l’encodage (si la personne n’a pas bien regardé) d’une date d’entrée avant celle occupée et après la date de sortie de l’autre réservation ,ces 2 dates seront « libre » mais pas pour toute la période une partie du milieu sera occupé 2*
Les dates libres sont celle qui ne sont pas dans la table archive,j’aurais bien voulu comparer la date d’entée au date d’entrée et date de sortie
Et la date de sortie au date d’entrée et date de sortie
Pour un même chalet
Je ne sais pas si j’ai bien explique le probleme ?
Merci de vos réponse
Répondre à alain105d

3


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
zenon, le mardi 7 mars 2006 à 11:06:11
DAD= date admisssion demandée
DA = date admission encodée
DSD = date sortie demandée
DS = date sortie

If DCOUNT(DAD < DA AND DSD > DS Or
DAD < DA AND DSD < DS Or
DAD > DA AND DSD<DS Or
DAD > DA AND DSD > DS AND DAD < DS Or
DAD < DA AND DSD < DS AND DSD > DA) > 0 Then

MsgBox("ces dates ne sont pas libres!")

(je pense que je n'ai rien oublié... Il faut bien sûr adapter les noms des champs et des tables)
Répondre à zenon

4


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
zenon, le mardi 7 mars 2006 à 16:51:40
Euh, désolé, j'ai fait ça en vitesse et je me suis méchamment planté avec DCount: ma syntaxe est inexacte et surtout on ne peut appliquer de critères que sur un seul champ...

Tu pourrais filtrer la table archives avec les critères ci-dessus et, si le filtre en renvoie pas d'enregistrement considérer qu'il n'y a pas de réservation pour les dates recherchées.
Répondre à zenon

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
alain105d, le mercredi 8 mars 2006 à 16:29:09
Bonjour
Dans les critères je dois aussi faire intervenir le nomchalet car pour une date(entée et sortie) je peux réserver plusieurs chalets différents.
Une idée ?
Merci
Répondre à alain105d

6


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
zenon, le mercredi 8 mars 2006 à 19:01:31
Bin, il suffit d'ajouter le critère mais pour chaque condition...

Si tu veux, envoie moi ta base (sans les données) pour que je teste...

guy.carpentier@versatel.be
Répondre à zenon

7


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
rodrigue62, le lundi 10 avril 2006 à 09:29:27
moi j'ai un problême un peu similaire puisqu'il consiste a trouver dans une liste de dates, une date comprise entre deux autres. La ou ca se complique, c'est que la limite superieure (date maxi) est connue, mais la date min doit etre la derniere entrée (avant la date maxi bien sur)
Je sais pas si mes explications sont suffisamment clair, ou meme si c'est possible, mais si vous avez la moindre petite idée, meme sans etre sur merci de me le faire savoir.
Répondre à rodrigue62

8


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
zenon, le mercredi 12 avril 2006 à 17:45:40
Qu'est-ce que tu veux dire par "la dernière entrée"?

Si tu tries ta table par date, il s'agirait du dernier enregistrement, non?... mais alors, il n'y aurait par définition pas d'autre enregistrement entre ce dernier et une date quelconque, plus tardive...

Je pense que je ne capte pas bien...
Répondre à zenon

9


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
rodrigue62, le mercredi 12 avril 2006 à 19:39:04
ben en fait c'est parceque j'ai une table avec des coûts qui change de temps en temps a des dates non regulieres en fonction des circonstances. ensuite je dois realiser un bilan prenant en compte ses dates, ce bilan est realisé pour un mois donné, qui peut remonter a plusieurs mois avant la date actuel, et il faut donc que je prenne en compte le coût a la derniere date avant celle dont je desire faire le bilan
Répondre à rodrigue62

10


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
zenon, le jeudi 13 avril 2006 à 22:49:27
Comment est structurée la table qui contient la donnée "coût"?
Si le prix change, j'imagine que chaque enregistrement comporte un lien avec l'article concerné, une date de début et une date de fin.

Si oui, il n'est pas difficile de retrouver la valeur avec une formule du type Where DateAchat < DateFin and DateAchat > DateDébut.

Personnellement, j'ai envisagé le problème autrement: je dois facturer des prestations dont les prix augmentent (en général et heureusement pour moi qui suis le prestataire...)
Je me contente lorsqu'il y a une modification de prix de mettre à jour ma table listant les prestations possibles et leur prix et j'ai créé une autre table reprenant la référence au bénéficiaire, la date de la prestation et son coût (ainsi que des champs destinés à vérifier si j'ai bien été payé ou la date de la facturation...) De cette manière, je ne surcharge pas la table listant les prestations: puisque je ne me réfère à cette dernière que lorsque j'encode la prestation, je n'ai pas besoin de connaître "l'historique" des prix.
Répondre à zenon

11


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
rodrigue62, le vendredi 14 avril 2006 à 08:58:15
Moi justement j'ai besoin de connaitre l'historique des coûts puisque l'on peut etre amené a me faire sortir le bilan d'une date antérieure, et afin d'etre le plus proche possible de la réalité il faut que je prenne en compte le coût de cette date et non celui en application actuellement.
Je vais peut etre retravailler mon mcd en mettant une table listant tous les mois concernés par un coût donné, ca sera plus simple que de partir dans des requetes compliquées.
merci quand meme a tous le monde pour l'aide que vous avez essayé de m'amner.
Répondre à rodrigue62

12


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 aya, le vendredi 25 janvier 2008 à 15:54:31
Bonjour à tous;

j'ai une base de donnée qui traite pointage des ouvriers par chantiers et par quinzaine, le prob que j'ai c que des fois un meme ouvrier change de fonction, " par exemple la 1ere quinzaine il travaille comme gardien, la 2ème comme ouvrier, donc au niveau de la base elle garde juste la dernière fonction comme ca je perd son historique " alor y'a t'il un moyen pr que chaque quinzaine s'enregistre avec ses propres données, merci de votre collaboration.
Répondre à aya

Résultats pour [access]Comparer une date entre 2 dates

Comparer 2 appareils photos numériques (Résolu) Bonsoir, voila, je voudrais savoir si il y aurai des connaisseur en photos numérique, qui voudrais bien me donner leur avis sur la comparaison entre 2 appareils photos. Le "Canon PowerShot A620" et le "Fujifilm FinePix S8000", je c'est bien que... www.commentcamarche.net/forum/affich-7601984-comparer-2-appareils-photos-numeriques
Driver Kingston datatraveler (Résolu) Bonjour, Quelqu'un pourrait-il me dire où trouver un driver pour une clé USB Kingstone Datatraveler 2GB ? Pour Windows 2000 professionnel. Merci. www.commentcamarche.net/forum/affich-5038946-driver-kingston-datatraveler

Résultats pour [access]Comparer une date entre 2 dates

Travailler sur les dates avec ExcelVous avez une date en C3 par exemple, et vous voulez connaitre : le N° de la semaine correspondant à cette date : = NO.SEMAINE(C3;2) Nota : 2 correspond à un système de semaines commençant le Lundi, et 1 pour le Dimanche. ... www.commentcamarche.net/faq/sujet-8647-travailler-sur-les-dates-avec-excel

Résultats pour [access]Comparer une date entre 2 dates

Probleme instalation pour GTA san andreas (Résolu)Bonjour a tous En fait j'ai cherché sur ce forum mais j'ai pas trouver la reponse:Lorsque j'essaie d'installer et lors de l'instalation un message m'aparait disant "F:/data 2.cab erreur de donné controle rendonance... www.commentcamarche.net/forum/affich-2765667-probleme-instalation-pour-gta-san-andreas
Problème de date sur Microsoft Excel 2003 (Résolu)Bonjour, Je rencontre un problème sur Microsoft Excel 2003. Lorsque je mets la date "2006" dans une cellule, celle-ci se transforme en 2007 dès que j'appuye sur enter. Cela marche normalement si je mets "06" - "006" ou encore "0006", le problème... www.commentcamarche.net/forum/affich-7153659-probleme-de-date-sur-microsoft-excel-2003
Comparer 2 bases de mails pour retirer... (Résolu)Bonjour, je suis novice en bases de données, et j'aimerais faire sous excel ou sous acces ou sur un autre logiciel, une comparaison de 2 bases d'emails de facon retirer de la base A tous les mails qui seraient aussi dans la base B ? merci pierre www.commentcamarche.net/forum/affich-4398376-comparer-2-bases-de-mails-pour-retirer

Résultats pour [access]Comparer une date entre 2 dates

3Com OfficeConnect 3CRWE454G75-MECRWE 454 3 Com 454G 454G,Vitesse max du réseau:100 Mbps,Vitesse max du réseau sans fil:54 Mbps,Support IEEE 802.11g,Support IEEE 802.11b,Type:Wireless Access Point,Data Link Protocole:IEEE 802.11b,IEEE 802.11g,Type de... www.commentcamarche.net/guide-achat/3com-officeconnect-3crwe454g75-me-610171-fiche-technique
Freecom DataTank 2TB / USB 2.0 / FireWire800 / 7200 rpmFireWire 800 2 TB,Firewire/USB,2000 Go,7200 tours/min,External 3.5",0.35 euro / Go,Lecteur de cartes mémoire:No,Portable,Ports hub USB 2.0 :1,Ports hub firewire:1,Type d'interface:Firewire800,Interne/Externe:Externe,Capacité:2000.0 Go,Mémoire... www.commentcamarche.net/guide-achat/freecom-datatank-2tb-usb-2-0-firewire800-7200-rpm-942327-fiche-technique

Résultats pour [access]Comparer une date entre 2 dates

2,8 millions de PC vendus en France au quatrième trimestre 2007(Paris - Relax news) - 2,8 millions de PC ont été vendus en France au cours du quatrième trimestre 2007, soit une hausse de 6,6% par rapport à la même période en 2006. Sur l'année 2007, la hausse est de 11,6% comparé à 2006, précise l'analyste... www.commentcamarche.net/actualites/2-8-millions-de-pc-vendus-en-france-au-quatrieme-trimestre-2007-5011478-actualite.php3
L'Internet à bord des Thalys est disponible(Paris - Relax news) - Thalys a inauguré, mercredi 14 mai, son service Internet Wi-Fi embarqué et son portail Thalysnet. Dès cette date, 25% des rames Thalys proposent un accès à Internet, avec un accès payant ou non selon la classe de voyage. A... www.commentcamarche.net/actualites/l-internet-a-bord-des-thalys-est-disponible-5846648-actualite.php3