Calcul de tarif de location saisonnière

J'ai besoin de vos lumières car je tourne en rond sur un problème qui ne paraît pourtant pas si compliqué, mais je ne trouve pas de solution.

J'ai une grille tarifaire pour de la location saisonnière avec des tarifs de nuitées pour des périodes allant du samedi au samedi (voir pièce jointe)

EntréeSortieNuitée
sam. 04 avr.sam. 11 avr.45€
sam. 11 avr.sam. 18 avr.45€
etc...

Cependant les demandes de locations ne vont pas forcément du samedi au samedi et je cherche le moyen de pouvoir calculer rapidement un tarif pour des périodes pouvant aller d'une semaine, 3 jours, 17 jours, etc...

Critères

ArrivéeDépart
ven. 07 aoûtdim. 16 août

Merci pour votre aide

108calcul-tarif.xlsx (5.44 Ko)

Bonjour et bienvenue sur le forum

Un essai à tester. Te convient-il ?

Bye :!

Hello,

Un essai sans macro. Il doit y avoir moyen de faire mieux.

42calcul-tarif.xlsx (9.10 Ko)

@gmb

Le tarif est par nuit donc si on reste du 04/04 au 11/04 on doit payer 45 * 7 = 315 or dans le fichier le tarif reste à 45, peut-être il y a une manière d'utiliser ton fichier ?

@JoyeuxNoel

J'aime bien le sans macro, je pense que ce que tu as fait c'est le mieux en formule, on peut pas avoir une seule formule en I7 ?

Ahah, c'est gentil, mais je suis certain que si une fameuse fleur passait par-là, elle nous donnerait la solution en matriciel et en une seule formule ;)

Merci pour vos réponses, j'aime bien vos approches différentes.

Je privilégie cependant la version sans macro de @JoyeuxNoel à celle de @gmb, car plus universelle et facilement transposable sur d'autres tableurs comme Google Sheets

Je vous mets également en pièce jointe une version avec formule proposée sur un autre forum Excel.

Encore merci à tous

34calcul-tarif-1.xlsx (10.28 Ko)

Hello,

Pour le coup, et en toute modestie, je préfère ma version à celle de l'autre forum ;)

N'hésite pas à passer ton sujet en résolu si c'est tout bon pour toi, et à ne pas poster sur plusieurs forums en même temps ....

Oui, je préfère également ta version
Je n'avais pas pensé au Recherchev que je n'utilise habituellement que lorsque je sais qu'il y a une réponse exacte (non proche).
Je regarde pour voir comment on passe le sujet en résolu

Ahah, c'est gentil, mais je suis certain que si une fameuse fleur passait par-là, elle nous donnerait la solution en matriciel et en une seule formule ;)

Bonjour,

challenge ... je pense que c'est possible et sans forcément passer par du matriciel !

@JoyeuxNoel, qu'elle est la procédure pour passer le sujet en Résolu stp ?

J'ai trouvé, bizarre comme fonctionnement, mais bon

@Agima : tu dois avoir un petit v en haut à droite de chaque post. Il te suffit de cliquer sur celui qui correspond à la réponse la plus adaptée à ton problème. OK

Hello Steelson, je pense vraiment que c'est jouable oui. Je n'ai pas cherché outre-mesure, mais mes différents essais ont été infructueux. (j'ai essayé de titiller tulipe, mais on n'a pas eu de réponse )

Voici

=SOMME(INDIRECT(("C"&EQUIV(F7;$A:$A;1))&":"&("C"&EQUIV(G7;$A:$A;1))))*7-(F7-INDEX($A:$A;EQUIV(F7;$A:$A;1)))*INDEX($C:$C;EQUIV(F7;$A:$A;1))-(7-(G7-INDEX($A:$A;EQUIV(G7;$A:$A;1))))*INDEX($C:$C;EQUIV(G7;$A:$A;1))
29calcul-tarif.xlsx (8.72 Ko)

Pfiou, c'est beau ça.

C'est là que je vois les limites de mon approche littéraire d'Excel. À un moment, ceux qui ont l'esprit matheux ont quand même un avantage ;)

Et je ne parle même pas de l’algorithmique pour le VBA ...

Bravo @Steelson, tu es une vraie brute (au bon sens du terme)

ceux qui ont l'esprit matheux ont quand même un avantage ;)

ou tordu !

l'astuce réside entièrement ici

=SOMME(INDIRECT(("C"&EQUIV(F7;$A:$A;1))&":"&("C"&EQUIV(G7;$A:$A;1))))

je reconstitue les adresses des prix de la première semaine et la dernière, que j'appelle par indirect, et je fais la somme sur cette plage

Oui c'est très malin de décomposer ainsi.
Je vais essayer de garder cette mécanique en tête pour une prochaine fois.

@Steelson Est-ce normal que je n'arrive pas à faire fonctionner ta formule si le tarif est sur un autre onglet ?

Il faut ajouter le nom de l'onglet juste devant le premier C de Indirect

20calcul-tarif.xlsx (9.27 Ko)

Champion du monde, ça marche nickel.

Contrairement aux autres propositions qui marchent très bien, ta formule permet d'appeler de nombreuses fois le calcul facilement puisqu'elle ne nécessite pas de plage intermédiaire pour le calcul.

Un grand merci pour ta compétence et ta réactivité

Je suis perfectionniste : version où il ne fraut plus aller dans la formule pour y mettre le nom de l'onglet !

=SOMME(INDIRECT(("'"&DROITE(CELLULE("nomfichier";donnees!$A$1);NBCAR(CELLULE("nomfichier";donnees!$A$1))-TROUVE("]";CELLULE("nomfichier";donnees!$A$1)))&"'!C"&EQUIV(A3;donnees!$A:$A;1))&":"&("C"&EQUIV(B3;donnees!$A:$A;1))))*7-(A3-INDEX(donnees!$A:$A;EQUIV(A3;donnees!$A:$A;1)))*INDEX(donnees!$C:$C;EQUIV(A3;donnees!$A:$A;1))-(7-(B3-INDEX(donnees!$A:$A;EQUIV(B3;donnees!$A:$A;1))))*INDEX(donnees!$C:$C;EQUIV(B3;donnees!$A:$A;1))
39calcul-tarif.xlsx (9.32 Ko)
Rechercher des sujets similaires à "calcul tarif location saisonniere"