Créer un planning pour un hôtel sur Google Sheets

Fermé
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018 - Modifié le 23 juin 2018 à 12:30
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018 - 24 juin 2018 à 19:18
Bonjour à tous, tout d'abord je m'excuse si ce message n'est pas posté dans le bon forum, mais je n'ai pas trouvé de forum spécifique à sheets, et comme un certain nombre de fonctions sont similaires avec excel...

Voilà, je vous expose mon problème, sur lequel je m'arrache les cheveux depuis hier : j'essaye de créer un planning de chambres pour un hôtel qui s'incrémente tout seul lorsqu'on rajoute sur une feuille à part le nom d'un client, la chambre réservée et la date de départ et d'arrivée.

Je voudrais le faire moi même sur Sheets, car les seuls templates que j'ai trouvé étaient des templates excel qui ne fonctionnaient pas sur Sheets (certaines formules pas reconnues). J'ai besoin que ce soit sur Sheets pour pouvoir y accéder de n'importe quelle machine pour modifier le planning.

En image ça donnerait ça :



Pour la base de donnée des noms des clients,

Et



Pour le tableau qui doit se mettre à jour.

Le tableur doit donc prendre en compte simultanément la tranche de dates, le nom du client, et la chambre correspondante.

J'ai essayé diverses formules pour parvenir au résultat escompté, et voici où j'en suis de ma réflexion avec mes maigres connaissances des fonctions de tableurs : pour que les cases du tableau se mettent à jour toutes seules, il faudrait rentrer une formule dans chaque case qui fait que :

SI la valeur "Chambre" ET la valeur " Date " de la liste des clients correspondent a la valeur de la ligne" Chambre " et de la colonne " Date " de la case en question dans le planning , ALORS afficher le nom du client. SINON afficher rien.

Peut-être qu'il y a un moyen beaucoup plus simple ou logique que cela de procéder ?

Deux problèmes auxquels je me heurte avec cette idée :

1- Comment faire pour que le tableur comprenne que, dans la première feuille (liste des clients), les valeurs de la colonne Date et de la colonne chambre doivent impérativement matcher sur la même ligne, et que le nom qui doit s'afficher doit être celui de la colonne " nom " de la même ligne en question ?

Je voudrais pouvoir ajouter des noms de clients à l'infini, et qu'à chaque fois les informations soient lues "ligne par ligne " et non pas indépendamment les unes des autres

2- J'ai pour l'instant réussi à faire marcher la fonction pour que la valeur inscrite dans une case " DU " (date d'arrivée) s'inscrive dans le tableau . Mais comment faire pour que tous les jours inclus dans la tranche définie entre "DU" et " AU (la date de départ) " soient pris en compte ?

Exemple : Durand arrive le 1 et repart le 3 : comment faire pour que son nom s'affiche a la fois dans la colonne du jour 1, du 2 et 3 ?

Je ne sais pas si je suis clair, en tout cas j'espère vraiment que vous saurez m'aiguiller !

D'avance grand merci
A voir également:

4 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
23 juin 2018 à 14:19
Bonjour

Un exemple de planning de réservation pour des chambres d’hôtes que tu pourrais facilement passer à plus de chambres
maintenant sur google sheets, je ne sais pas ce que ça peut donner
tu as 2 macros d'information sur qui a réservé et une autre sur collision d’occupation
https://mon-partage.fr/f/REENBU2U/
2
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018
23 juin 2018 à 18:47
Bonjour Michel,

J'avais effectivement trouvé ce template (j'ai un peu fouillé le sujet avant de m'en remettre à vos conseils !)

Le souci étant qu'une partie des formules ne sont pas reconnues par sheets et que le planning ne fonctionne donc pas, de plus je n'arrive pas a comprendre comment il fonctionne afin de tenter de le reproduire...

Et pour les macros, il faut encore que j'apprenne comment ça marche, et à m'en servir.. Comme je disais, j'ai quelques bases sur le fonctionnement des formules etc.,, mais il y a pas mal de choses que j'ignore... Tu penses que je ne peux pas m'en sortir avec de simples fonctions, pour ce que je cherche à faire ?

Merci,
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
24 juin 2018 à 08:54
Bonjour,

effectivement, avec google sheets, c'était prévisible

les macros sont juste pour l'information: qui a réservé et au cas où il y a 2 personnes sur la m^me date

tu pourrais te baser sur des exemple de planning de congé du personnel: au lieu du congé c'est l'occupation d'une chambre et au lieu du congé et le nom de l'agent, c'est le numéro de chambre.
attention, il y a des exemples sur CCM dont certains ne permettent qu'un seul congé (si,si)

je regarde dans mon grenier mais c'est de l'Excel, donc....
0
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018
Modifié le 24 juin 2018 à 09:13
Bonjour Michel,

Je crois que je vois le genre de planning dont tu parles, mais il me semble que la différence est que chaque ligne va correspondre à un employé et le résultat va s'afficher en face. Pour la formule il suffit donc de mentionner la case en face et de tirer vers le bas pour que tout se décale automatiquement .

Or, moi j'aimerais justement pouvoir rajouter les clients, leurs dates et leur chambre à la chaîne, " en vrac " dans une liste à part, puis que l'information soit récupérée et traitée dans le tableau, tout en étant lue ligne par ligne. C'est bien ça qui me pose le premier gros souci.

En fait ce que je cherche à faire c'est exactement le système du planning que tu m'as envoyé, sauf que je ne sais pas comment le " traduire " pour qu'il soit compris par sheets.

Pour empêcher que deux personnes soient à la même date a la même chambre, en affichant par exemple un message d'erreur dans une case dédiée, je voulais le faire aussi, mais pour ça il faut obligatoirement une macro? On ne peut pas rajouter dans la fonction un petit " si case = non vide, afficher " chambre occupée " " ?
0
danielc0 Messages postés 833 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 19 avril 2024 74
23 juin 2018 à 13:07
Bonjour,

Ca serait bien d'avoir le classeur au lieu d'avoir les images.

Cordialement.

Daniel
1
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018
23 juin 2018 à 18:27
Bonjour Daniel,

Voici le lien du classeur que j'ai commencé à faire, si cela peut être utile. Cependant il n'y a à vrai dire pas grand chose d'autre que sur les screenshots, car je n'ai pas réussi à mettre au point de formule pertinente et fonctionnelle...

https://docs.google.com/spreadsheets/d/1cGK5a8XoltlAXj78S_VejShnrEV6thWGW9LBIqNqGCE/edit?usp=sharing

Bien à vous
0
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018
23 juin 2018 à 21:36
Pour l'instant je suis arrivé à cette formule :

=SI(ET ( RECHERCHE(COLONNE()- 1; DU) = COLONNE()- 1 ; RECHERCHE(LIGNE()-2 ; CHAMBRE) = LIGNE()- 2) ; "ça marche " ; )

J'ai mis Colonne()-1 et Ligne ()-2 pour que la valeur corresponde à la valeur inscrite sur la ligne/colonne correspondant à chaque case. Ce qui a a l'air de fonctionner....

Le souci est que, du coup, le tableur remplit la condition " true " dès lors que la donnée concernée existe n'importe où dans la colonne " DU " et la colonne " CHAMBRE ", alors qu'il faudrait spécifier que la condition true ne peut être valide que si la valeur existe en même temps dans la même ligne....

Bien sûr, au lieu du texte " ça marche ", je voudrais afficher le nom correspondant au client... Et je dois aussi arriver à remplacer "DU" par " L'ensemble des valeurs comprises entre " DU" et "AU " ". Mais bon de toute façon je suis bloqué sur cette histoire de ligne...
0
Bibouche05 Messages postés 6 Date d'inscription samedi 23 juin 2018 Statut Membre Dernière intervention 24 juin 2018
24 juin 2018 à 19:18
Autre formule que j'essaye de faire, mais pareil je me heure à un problème : dans la liste des clients, faire une case qui indique " chambre prise " si la tranche de jours d'une chambre n'est pas disponible.

J'ai essayé deux trucs :

=SI (D2=CHAMBRE;SI (ET(B2>=DU;C2<=AU);"chambre prise";FAUX); )

et

=SI (D2=CHAMBRE;SI(NB.SI(DU;B2)>0;"Pas de place";"") ; )

L'idée est de dire que si la valeur de D2 (qui correspond à un numero de chambre) existe quelque part dans la plage nommée CHAMBRE (qui comprend l'ensemble des champs " chambre") alors on regarde si les dates ne se croisent pas.
Le souci c'est qu'a chaque fois, ça renvoie " chambre prise " même lorsque c'est censé être libre. Je soupçonne que comme il va chercher dans l'ensemble des colonnes " CHAMBRE" " "DU " et " AU", il prend aussi en compte la valeur située dans la ligne concernée, ce qui fausse le résultat.

On ne peut pas lui dire par exemple de chercher dans la plage CHAMBRE "SAUF" la cellule D2 ?
0