Création d'un programme de réservations de chambres

JBARBE

XLDnaute Barbatruc
Bonjour à tous,

J'ai besoin de vos services pour la création d'un programme de réservations de chambres !

Il s'agit de mettre les couleurs de chambres en tenant compte des dates ici pour les mois de septembre et octobre 2016 ( voir feuille) et des Noms !

Bien entendu les dates ne doivent pas se chevaucher et dans ce cas un message doit s'afficher indiquant que la chambre est réservée par telle personne !

Attention pour Barre, les dates se chevauchent sur 2 mois ( 2 feuilles)

Un exemple de couleurs est fait dans la feuille 09-2016 et la feuille 10-2016

Merci à l'avance et bonne soirée !
 

Pièces jointes

  • Réservation_Chambres.xls
    44 KB · Affichages: 71

Modeste geedee

XLDnaute Barbatruc
Bonsour®
J'ai besoin de vos services pour la création d'un programme de réservations de chambres !

Bien entendu les dates ne doivent pas se chevaucher et dans ce cas un message doit s'afficher indiquant que la chambre est réservée par telle personne !

d'abord quelques préalables :
quand on parle de réservations il convient de préciser :
- s'il s'agit de 1/2 pension, pension complète ou nuitée seule
- les bornes de réservations : en général de midi à midi(occupation à partir de telle heure, libération avant telle heure)
-

pour une optimisation de remplissage une visualisation dynamique est à privilégier .
upload_2016-9-5_1-58-9.png


un embryon de réalisation en pièce jointe ...;)
cliquez et sélectionnez les cellules du planning
 

Pièces jointes

  • Réservation_Chambres.xls
    177 KB · Affichages: 54

JBARBE

XLDnaute Barbatruc
Bonjour Modeste, Bonjour à tous,
Merci pour toutes ces précisions concernant ces réservations de chambres !

Seule les heures de début et de fin de réservation que tu ajoute et que j'ai oublié m’intéresse !

Le but est que lorsque l'on fait la saisie dans la feuille "Réservations" un message s'affiche en cas d'erreur de saisie ou d'occupation de chambre !

Pour Roger j'ai volontairement ( qui peux être une erreur de saisie ) mis la réservation à 11 h 00 le 20/09 !
Hors Barre ne qui la chambre 2 qu'à 12 h 00( j'aurais bien voulu qu'un message m'indique mon erreur de saisie ou que l'occupation est déjà faite lors de la saisie dans la feuille " Réservations")

Je pense qu'une macro peux régler ces solutions !

bonne journée !
 

Pièces jointes

  • Réservation_Chambres.xls
    123 KB · Affichages: 49

JBOBO

XLDnaute Accro
Bonjour,

pour les chevauchements, à tester en G2 de la feuille "Reservations", =SI(OU(SOMMEPROD(($C$2:$C$1000>=$C2)*($E$2:$E$1000<=$E2)*($F$2:$F$1000=$F2))>1;SOMMEPROD(($F$2:$F$1000=$F2)*($E$2:$E$1000>=$C2)*($C$2:$C$1000<=$E2))>1);"ATTENTION";"")
et tirer vers le bas.
 

JBOBO

XLDnaute Accro
Re,

Je n'y connais quasiment rien en macro, donc je ne pourrais pas répondre à ton besoin. Désolé. Par contre il me semblait bien que ma formule fonctionnait, à moins que j'ai omis une ou plusieurs conditions. (voir fichier joint)
 

Pièces jointes

  • Copie de Réservation_Chambres.xls
    231 KB · Affichages: 41

JBARBE

XLDnaute Barbatruc
Re,

Je n'y connais quasiment rien en macro, donc je ne pourrais pas répondre à ton besoin. Désolé. Par contre il me semblait bien que ma formule fonctionnait, à moins que j'ai omis une ou plusieurs conditions. (voir fichier joint)

Merci le message s'affiche avec ton fichier maintenant !
Je vais voir avec tatiak qui possède un programme plus sophistiqué si je peux l'utiliser !
 

JBARBE

XLDnaute Barbatruc
Merci à vous tous !

Le programme à tatiak est complet cependant il pose problème !!
Dans mon exemple :
- DEDEE à réservè à partir du 26/08/16 et j'ai pu mettre DUPONT jusqu'au 27/08/16 avec la même chambre sans que le programme m'avertisse du chevauchement des dates du 27 sur le 26 !!
C'est le problème que j'ai d'abord posé dans ce post !
JBOBO m'a réglé ça par formule mais j'espérais un message avec boite de dialogue !

Merci à l'avance !
 

Pièces jointes

  • RESAHOTEL - 5sept2016.xlsm
    138.8 KB · Affichages: 33

Modeste geedee

XLDnaute Barbatruc
Bonsour®
Merci à vous tous !
Dans mon exemple :
- DEDEE à réservè à partir du 26/08/16 et j'ai pu mettre DUPONT jusqu'au 27/08/16 avec la même chambre sans que le programme m'avertisse du chevauchement des dates du 27 sur le 26 !!
C'est le problème que j'ai d'abord posé dans ce post !
Ce problème est pris en compte par construction dans l'exemple que j'ai fourni ;)

cependant faire des saisies directement dans la base de données "Réservations", mets hors circuit tout les contrôles effectués via la saisie dynamique sur le planning...:confused:
Par principe lorsque l'on intervient sur une base de données, les controles d'intégrité reste à la charge du moteur de base de données.
Excel peut servir de tables pour bases de données, mais n'intègre pas ce genre de contrôles.:(

Il faut choisir :
soit c'est le programme qui controle, soit c'est le manipulateur.

dans l'exemple que j'ai fourni, tout se passe via l'interface Planning :rolleyes:
seules les suppressions d'enregistrements pourront être faites manuellement dans la feuille "Réservations":cool:

Capture1.JPG Capture2.JPG Capture3.JPG Capture4.JPG Capture1.JPG Capture2.JPG Capture3.JPG Capture4.JPG
 
Dernière édition:

JBARBE

XLDnaute Barbatruc
Bonsour®
Ce problème est pris en compte par construction dans l'exemple que j'ai fourni ;)

cependant faire des saisies directement dans la base de données "Réservations", mets hors circuit tout les contrôles effectués via la saisie dynamique sur le planning...:confused:
Par principe lorsque l'on intervient sur une base de données, les controles d'intégrité reste à la charge du moteur de base de données.
Excel peut servir de tables pour bases de données, mais n'intègre pas ce genre de contrôles.:(

Oui mais lorsque dans le programme de tatiak et lors de la saisie avec la boite de dialogue de tout les critéres, il est quand même possible lors de la validation de mettre un msgbox indiquant que la chambre est occupée pour la période saisie !

Il suffit de faire un contrôle des couleurs ( exemple : if cells(i,y)interior.colorindex = 43 then msgbox "chambre occupée "&cells(i,y)& exit sub )
 

JBARBE

XLDnaute Barbatruc
Bonsoir,
tatiak
Dans la msgbox serait-il possible d'avoir des renseignements sur la chambre occupée ( par exemple si le 27/08 chevauchait le 26/08 ) alors la msgbox dirait " chambre occupée jusqu'au 26/08 " ce qui éviterait de vérifier ce chevauchement !

bonne soirée !
 

Si...

XLDnaute Barbatruc
salut

tatiak, pour éviter un message d’erreur, dans Class_Cal, un test à rajouter peut-être ?
VB:
Public WithEvents jour As MSForms.Label
Private Sub jour_click()
  ChoixDate = DateSerial(Year(CDate(Calendrier.ddj.Caption)), _
  Month(CDate(Calendrier.ddj.Caption)), jour.Caption)
  'ici------
   If UserForm2.TextBox19 <> "" Then _
      If ChoixDate < CDate(UserForm2.TextBox19) + 1 Then Exit Sub
  ‘nuitées >1 donc non négative pour la déclaration en Byte -----
  Unload Calendrier
End sub
 

Discussions similaires

Statistiques des forums

Discussions
312 047
Messages
2 084 857
Membres
102 688
dernier inscrit
Biquet78