Comunidade
Revit & Navisworks & Autodesk Construction Cloud - Português
Compartilhe seu conhecimento, faça perguntas colabore com ideias e explore os tópicos mais populares de Revit & Navisworks.
cancelar
Mostrando resultados para 
Mostrar  apenas  | Pesquisar então 
Você quer dizer: 

Dúvida sobre Fórmulas no Revit: Condição com Múltiplos Parâmetros

2 RESPOSTAS 2
SOLUCIONADO
Responder
Mensagem 1 de 3
murilo_mhag
125 Exibições, 2 Respostas

Dúvida sobre Fórmulas no Revit: Condição com Múltiplos Parâmetros

Estou criando uma fórmula no Revit que utiliza a função IF para analisar alturas de quatro parâmetros diferentes: Altura 1, Altura 2, Altura 3 e Altura 4. A ideia é a seguinte: se alguma dessas alturas for maior que 90 cm, a fórmula deve identificar o valor máximo acima de 90 entre esses parâmetros e somar 10 cm a esse valor.

O problema que estou enfrentando é que a fórmula parece avaliar as alturas de forma sequencial (começa com Altura 1, depois Altura 2, e assim por diante) e aplica a regra no primeiro valor maior que 90 que encontrar, mesmo que esse não seja o maior valor entre os parâmetros.

Exemplo prático:

  • Altura 1: 50 cm
  • Altura 2: 95 cm
  • Altura 3: 100 cm
  • Altura 4: 120 cm

Nesse caso, a fórmula aplicaria a regra na Altura 2 (95 cm) porque é o primeiro valor maior que 90 encontrado, ignorando que a Altura 4 (120 cm) é o maior valor e deveria ser o parâmetro a receber a soma de 10 cm.

Além disso, se todas as alturas forem maiores que 90, a fórmula ainda deveria identificar o maior valor entre os quatro parâmetros (neste exemplo, 120 cm da Altura 4) e aplicar a soma de 10 cm apenas nesse valor.

Pergunta:

Existe uma forma de criar a fórmula para que ela analise os quatro parâmetros, identifique o maior valor que seja maior que 90, e aplique a soma de 10 cm somente a esse valor? É possível usar ferramentas como max() ou alguma outra abordagem para garantir que o maior valor seja escolhido, independente da ordem dos parâmetros?

2 RESPOSTAS 2
Mensagem 2 de 3
mauricio_mssf
em resposta a: murilo_mhag

Olá @murilo_mhag 

Fiquei curioso com o uso se puder compartilhar ficarei grato.
Enfim, as regras de fórmulas do Revit são mais limitadas que as do excel, não contem fórmula diretamente para encontrar o valor  máximo "=Máximo()"
Criando uma fórmula para o máximo de três valores no Revit

 

, nem conjunto de sinais como maior ou igual ">=" o que nos obriga a ser criativos e mais específicos, e juntar formulas de  If (SE), com And (E) e também com Or (OU) costumam gerar fórmulas bem grandes para que consiga ser bem especifico,.
Ajuda | Abreviatura e sintaxe válida de fórmulas | Autodesk
Ajuda | Utilizar declarações condicionais em fórmulas | Autodesk

 no seu exemplo pelo que entendi você que quer analisar o o parâmetro com maior altura, e se for maior que 90 adicionar mais 10, para isso teria que verificar 
parâmetro Altura 1, comparar se ele é maior que 90 e simultaneamente se é Maior que o Parâmetro Altura 2, 3 e 4 , se for verdadeiro o resultado será o Altura 1 + 10, caso contrário irá avaliar o Altura 2 se ele é maior que 90 e se simultaneamente for maior que Altura 1, 3 e 4 o resultado será Altura 2 + 10 e etc.

Sendo assim sua fórmula ficaria uma grande linha de fórmula assim:
if(and(Altura 1 > 90 m, Altura 1 > Altura 2, Altura 1 > Altura 3, Altura 1 > Altura 4), Altura 1 + 10 m, if(and(Altura 2 > 90 m, Altura 2 > Altura 3, Altura 2 > Altura 4, Altura 2 > Altura 1), Altura 2 + 10 m, if(and(Altura 3 > 90 m, Altura 3 > Altura 4, Altura 3 > Altura 1, Altura 3 > Altura 2), Altura 3 + 10 m, if(and(Altura 4 > 90 m, Altura 4 > Altura 1, Altura 4 > Altura 2, Altura 4 > Altura 3), Altura 4 + 10 m, 0 m))))

mauricio_mssf_0-1734292098716.png

 


Espero ter conseguida explicar.

Você achou esta postagem útil? Sinta-se à vontade para curtir esta postagem.
Ficou satisfeito com a resposta à sua pergunta? Nesse caso, clique no botão ACEITAR SOLUÇÃO.


 Mauricio Santos Filho Arquiteto | BIM Manager
EESignature 

Mensagem 3 de 3
murilo_mhag
em resposta a: mauricio_mssf

 

Olá, @mauricio_mssf .

Primeiramente, gostaria de agradecer pelo suporte e pela ajuda! Sem prolongar muito, venho dizer que sua fórmula funcionou perfeitamente. Consegui aplicá-la e obtive exatamente o resultado esperado. Muito obrigado por isso!

Quanto ao uso, precisei fazer algumas pequenas alterações para que ela se adequasse ao propósito real que eu precisava. A pergunta foi elaborada de forma simplificada, justamente para facilitar o entendimento, mas a lógica geral permaneceu a mesma. Apenas ajustei alguns parâmetros e condições para atender às minhas necessidades específicas.

No meu caso, usei a fórmula em uma família de caixa de inserção, algo simples, mas que quis construir por conta própria com parâmetros personalizados. Entendo que há bastante conteúdo disponível sobre isso, mas achei interessante desenvolver do zero, pois serviu como aprendizado prático para mim mesmo.

Sobre as alterações que fiz:

  1. Unidade de medida: Troquei os 90 metros da fórmula original por 90 cm, que era o correto no meu caso.
  2. Condição final: Ajustei para que, se todas as ocorrências fossem falsas, a fórmula retornasse um valor padrão de 90 cm, como exigido pela minha aplicação.

Gostaria também de compartilhar a família modelo que utilizei como base. Continuarei estudando sintaxes e lógicas como essa para aplicar em futuras situações. Mais uma vez, agradeço pelo suporte. Sua ajuda foi fundamental!

Não encontrou o que está procurando? Pergunte à comunidade ou compartilhe seu conhecimento.

Postar nos fóruns  

Autodesk Design & Make Report