View Full Version : formule
philippe.gagnon
2010-03-01, 04:15 PM
Bonjour,
je travaille présentement sur un hotel où il y a 4 types de chambre. Jai fait une nomenclature de pièce qui montre combien de chambre de chaque type j'ai par étage. Jaimerais ajouter un champ qui me donnerait le nombre de lit total selon le nom de la piece.
alors,
CHAMBRE TYPE "A" , 1 LIT DOUBLE
CHAMBRE TYPE "B" , 2 LITS DOUBLES
CHAMBRE TYPE "SUITE" , 1 LIT SIMPLE, 1 LIT DOUBLE
CHAMBRE TYPE "NOMADE" , 4 LITS SIMPLES.
j'ai trouvé cet exemple dans l'aide:
Instructions IF imbriquées : =IF ( Length < 35' , 2' 6" , IF ( Length < 45' , 3' , IF ( Length < 55' , 5' , 8' ) ) )
que j'aissaie de convertir pour mes besoins :
champ LITS DOUBLES:
=IF ( Nom = CHAMBRE TYPE "B" , 2 , IF ( Nom = CHAMBRE TYPE "A" , 1 , IF ( Nom = CHAMBRE TYPE "SUITE" , 1 , 0 )))
Mais il me dit "Opétateur non attendu: =
voyez-vous ce qui ne fonctionne pas dans ma formule?
Merci
philippe.drouant
2010-03-01, 05:49 PM
Le "=" est inutile au début de la formule "=if..."
Il n'est pas possible de faire un test conditionnel sur une valeur de type texte donc tu ne peux pas vérifier le nom des chambres pour décider de la valeur de ton paramètre "Lits Doubles"
philippe.gagnon
2010-03-01, 07:17 PM
Le "=" est inutile au début de la formule "=if..."
Il n'est pas possible de faire un test conditionnel sur une valeur de type texte donc tu ne peux pas vérifier le nom des chambres pour décider de la valeur de ton paramètre "Lits Doubles"
Merci Philippe pour la réponse,
vois-tu une façon d'obtenir le nombre de lit sans les placer dans toutes les chambres?
C'était mon premier essaie de formule, je pensais que ce serait simple pour les lits...
merci
Philippe
philippe.drouant
2010-03-01, 08:54 PM
...vois-tu une façon d'obtenir le nombre de lit sans les placer dans toutes les chambres?...
Oui :) Il y en a plusieurs. En voici une:
Tu conserves ta nomenclature de pièces.
Tu va créer une nouvelle table de valeurs qui sera liée à ta nomenclature de pièces.
1/ Onglet Vue > Nomenclatures / Nomenclatures/Quantités.
2/ Dans la boite de dialogue, tu choisis "Pièces" puis tu cliques "Création d'une table de valeurs". Tu peux lui donner un nom... Cliques sur OK.
3/ Cliques sur le bouton "Paramètres...". Tu dois ajouter deux paramètres du type "Nombre entier". Ils seront nommés (par exemple) "Nbre Lit Simple" et "Nbre Lit Doubles".
4/ Une fois les paramètres créés cliques sur OK.
5/ Sur le ruban cliques sur le bouton "Nouveau". Cela ajoute une ligne à la table. Tu dois renseigner les champs:
Nom de la clé : A
Nbre Lit Simple : 0
Nbre Lit Double : 1
Cliques sur le bouton "Nouveau".
Nom de la clé : B
Nbre Lit Simple : 0
Nbre Lit Double : 2
et ainsi de suite pour les 4 types de chambre.
6/ Ouvre les propriétés de ta nomenclature de pièces pour y ajouter les champs:
- Nom de la clé.
- Nbre de Lit Simple.
- Nbre de Lit Double.
7/ Valide tes changements et maintenant...
Dans ta nomenclature de pièces, cliques sur une cellule "Nom de la clé", une liste déroulante doit s'ouvrir avec les différents type de chambres (A,B, SUITE, NOMADE), fais ton choix et les valeurs correspondantes aux nombre de lits seront renseignés...
Voila en espérant que cela t'aide un peu ;)
Note:
-Tu peux renommer le champ "Nom de la clé" en "Type de chambre" pour faire plus "pro" ;)
- Si tu regarde dans les propriétés d'une pièce tu verras que les valeurs du nombre de lits sont présentes.
Il y a d'autres solutions mais celle que je propose te permets de traiter le nombre de lit simple et double en une opération... à toi de voir ;)
philippe.gagnon
2010-03-02, 03:52 PM
Merci Philippe de prendre le temps de m'expliquer tout ça.
j'ai suivi toutes tes indications et j'arrive à avoir le nombre de lit par type de chambre.
Par contre, ce que je cherche, cE'st le total de lit dans le projet. C'est aussi la méthode que je vais utiliser pour sortir les quantités de tous les éléments utiliser dans le projet sans avoir à aménager les 153 chambres, ce qui alourdirait énormément le fichier ?
Mon problème rendu là, c'est que lorsque je cré une valeur calculée (Nbre Total Lit Doubles = Nombre*Nbre Lit Doubles) pour avoir le total de lit, j'ai ce message:
Le champ Nombre ne peut pas être utilisé dans les formules.
Lorsque plusieurs éléments s'affichent dans la même ligne de nomenclature, les formules sont évaluées indépendament pour chaque élément, les résultats étant ensuite fusionnés. Ce compte n'est valable que pour l'ensemble de la ligne et non pour des éléments individuels.
Je ne peut pas utiliser le champ nombre dans une formule de valeur calculée?
Philippe
gravelin
2010-03-02, 04:49 PM
non ce n'est pas possible.
tu dois utiliser le "calcul des totaux" sur les champs concernés dans la mise en forme de tes champs dans la nomenclature.
philippe.gagnon
2010-03-02, 08:46 PM
Je repose la question :
...voyez-vous une façon d'obtenir le nombre de lit sans les placer dans toutes les chambres?...
un façon d'obtenir le nombre d'élément qu'il y a dans une pièce sans les placer afin de ne pas surcharger le modèle?
Pascal.Parent2
2010-03-02, 08:57 PM
Bon allez, j'me lance ...
Attention, je suis pas un spécialiste, c'est juste une idée :
Ce que tu cherches à faire avec tes lits, j'essaye de le faire pour tous les ouvrages du modèle...
La solution la plus rentable (désolé pour le gros mot) me parait être de lier ton modèle avec une bibliothèque type Ecobanque que tu peux adapter.
Par exemple, on peut lier une fondation 40x50 du modèle à un certain ratio de ferraillage, béton, sable...etc et le récupérer dans un logiciel comme devisoc par exemple. Le commercial de soc informatique te fera une démonstration internet sans problème.
Dans ton cas, il faut lier tes lits aux pièces comme te l'as précisé Philippe plus haut par la valeur surface...
J'espère ne pas être trop a coté de la plaque.
@+
philippe.drouant
2010-03-02, 09:48 PM
Il n'y a pas de miracle... si tu ne veux pas placer les lits dans les chambres pour ne pas surcharger le modèle (ce qui est discutable) et que tu ne veux pas renseigner les pièces sur le nombre de lits qu'elles comportent comment veux tu que Revit devine la valeur et le type de lits dans une chambre et à plus forte raison le nombre total de lits ?
Quelque soit la solution que l'on va te proposer (c'est vrai aussi pour celle de Pascal) il faudra à un moment ou à un autre renseigner les pièces de façon directe ou indirecte.
Par exemple, tu as remarqué qu'il n'était pas possible d'utiliser les champs de type Texte dans un test conditionnel, mais tu pourrais très bien ajouter un paramètre aux pièces (par exemple "Type de chambre") qui serait une valeur entière. Dans ce cas on pourrait considérer que les chambres de type A=1, les chambres de type B=2, les chambres de type SUITE=3 et NOMADE=4. A partir de ce moment tu pourrais utiliser une formule avec un test conditionnel proche de ce que tu cherchais à faire dans ton premier message:
IF ( Type de chambre = 1 , 1 , IF ( Type de chambre= 2 , 2, IF (Type de chambre = 3, 1 , 0 )))
mais là encore il faudra renseigner la valeur du paramètre "Type de chambre". :)
Concernant les totaux et par rapport à mon précédent message, Yves t'as donné la solution.
philippe.gagnon
2010-03-03, 12:02 AM
Rebonjour,
J'ai finalement réussi, je n'avais pas saisi ce que me disait Gravelin... c'est ce qui me manquait. Je joins un fichier avec les 2 solutions que Philippe.Drouant m'a proposées pour ceux qui comme moi saisissent mieux à partir d'un résultat qu'avec des explications.
je me rend compte que je n'ai pas assez de connaissance p/r aux formule pour faire ce que j'essaie de faire. Je pensais avoir saisi la base mais je me rend compte que ce n'est pas un coup de main que je vous demandais mais bien une solution complète...
Je ne cherchais pas de solution miracle, j'aime essayer avec revit le plus de chemins possibles pour acroître mes connaissances.
By the way, c'est notre consultant revit (que je vais appeller la prochaine foi au lieu de vous demander une solution complète) qui m'a dit que ça n'avait aucun sens d'aménager toutes les chambres de l'hotel, ce que javais fait au départ, et de plutôt préconiser des formules qui multipliraient les éléments qui composent les chambres types pour obtenir les quantités.
MERCI BEAUCOUP POUR LE TEMPS QUE VOUS METTEZ SUR CE FORUM ET SUR VOS BLOGS, ILS SONT TRÈS UTILE.
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions Inc. All rights reserved.