Salut,
Pour la première question oui c'est possible. Je ne sais pas quels sont les critères que tu veux prendre en compte mais avec les noeuds qui existent sur Dynamo c'est réalisable.
Pour la deuxième question je dirais aussi dynamo je pense. Sinon je ne vois pas comment faire avec Revit seul.
Sinon pour les 2 cas ça doit se faire avec l'API Revit (macro ou plugin) mais il faut plus de connaissances en programmation que pour l'utilisation de Dynamo.
Donc je te conseilles Dynamo pour ma part.