Power Apps Tuto : créez une application de réservation de salle pour Teams, pas à pas

La salle Trocadéro est réservée… par deux équipes, à la même heure. Si cette scène vous rappelle quelque chose, ce tutoriel est fait pour vous. Avec Power Apps, vous allez créer une vraie application de réservation de salle, utilisable directement dans Microsoft Teams, sans écrire une ligne de code classique !

Martin

⎪

voir la bio

🗓️ Publié le

07.11.2026

🖋️ Mis à jour le :

07.11.2026

Martin

⎪

voir la bio

👀 Temps de lecture :

10min

Sommaire

Formation Power Apps

Un processus papier ou un fichier Excel à transformer en application ?

en savoir plus

Sommaire

Réserver une salle de réunion par message, par tableur partagé ou à l'oral, c'est la garantie d'avoir un jour deux équipes devant la même porte. Power Apps permet de régler ce problème avec une vraie application, utilisable directement dans Microsoft Teams et sans savoir coder.

Dans cet article, nous reprenons le cas pratique de notre vidéo : une application qui permet de réserver une salle sur un créneau, vérifie qu'elle est disponible et enregistre la réservation dans une liste. Vous verrez comment créer la liste, générer l'application, ajouter les contrôles de validation et la publier.

Le projet : une application de réservation de salle dans Teams

Trois briques, trois rôles :

  • SharePoint stocke les réservations : une ligne, une réservation
  • Power Apps affiche le formulaire et applique les règles
  • Teams diffuse l'application à vos équipes

Une seule règle métier compte : une salle ne peut pas être réservée deux fois sur le même créneau. Deux salles différentes, elles, peuvent être réservées en même temps. C'est un bon exercice pour décovrir la Power Platform.

Étape 1 : créer la liste SharePoint

Une liste SharePoint est la source de données la plus simple à utiliser avec Power Apps. Créez-en une, nommée « Appli réservation salle », avec ces colonnes :

  • Réservateur : du texte
  • Salle : un choix, avec une valeur par salle
  • Début et Fin : des dates avec heure

Laissez la colonne Titre de côté : nous la remplirons automatiquement à l'étape 5.

Pour tester, passez la liste en mode grille et collez quelques réservations d'exemple depuis Excel. Attention à l'orthographe des salles : un accent manquant ne correspond plus à la valeur de la colonne de choix. Si SharePoint est nouveau pour vous, notre article Comment créer un site SharePoint pose les bases.

Étape 2 : générer l'application

Partir de la liste est plus rapide que de repartir de zéro, car la connexion aux données est déjà faite.

  1. Dans Power Apps, cliquez sur Créer, puis sur SharePoint.
  2. Choisissez votre site, puis votre liste.
  3. Patientez : Power Apps génère une application de base, avec un écran de liste et un formulaire.

Cette application est votre point de départ. Les étapes suivantes la transforment en vraie application de réservation. Besoin de repères sur l'outil ? Lisez Par où commencer avec Power Platform ?

Étape 3 : n'afficher que les réservations utiles

Par défaut, l'écran liste toutes les réservations, y compris les anciennes. Deux ajustements suffisent.

  1. Insérez une liste déroulante alimentée par la colonne Salle.
  2. Dans la propriété Items de la galerie, utilisez Filter, qui ne garde que les lignes répondant à toutes les conditions :

Filter(
   'Appli réservation salle';
   Salle.Value = Dropdown1.Selected.Value;
   Fin >= Now()
)

La formule se lit ainsi : « toutes les réservations de la salle choisie qui ne sont pas terminées ».

Deux repères pour éviter les erreurs : .Value est obligatoire pour une colonne de choix comme Salle, mais pas pour une colonne de date. Et selon la langue de votre Power Apps, le séparateur est ; ou ,.

Étape 4 : refuser les réservations impossibles

Par défaut, le bouton de validation exécute SubmitForm, qui enregistre sans rien vérifier. On le remplace par une formule qui contrôle deux choses avant d'enregistrer.

Contrôle 1 : la fin vient après le début. Le formulaire fournit la date, l'heure et la minute séparément. On les assemble avec DateTime(année; mois; jour; heure; minute; 0). L'heure et la minute sont déjà des nombres : inutile de les convertir.

Contrôle 2 : la salle est libre. Deux créneaux se chevauchent quand chacun commence avant la fin de l'autre. Prenons une salle déjà réservée de 10 h à 12 h :

  • une demande de 11 h à 13 h est refusée, car 10 h < 13 h et 12 h > 11 h
  • une demande de 12 h à 13 h est acceptée, car 12 h n'est pas supérieur à 12 h

On cherche donc une réservation de la même salle qui chevauche le créneau demandé. S'il n'y en a aucune, on enregistre. Voici la structure de la formule, à adapter à vos noms de contrôles. DateDebut et DateFin sont les deux assemblages DateTime du contrôle 1 :

If(
   DateFin <= DateDebut;
   Notify("La fin doit être après le début"; NotificationType.Error);
   !IsEmpty(Filter('Appli réservation salle';
       Salle.Value = SalleChoisie;
       Début < DateFin;
       Fin > DateDebut));
   Notify("Salle déjà réservée sur ce créneau"; NotificationType.Error);
   SubmitForm(Form1)
)

Étape 5 : générer le titre automatiquement

Une liste sans titre affiche « Aucun titre ». Plutôt que de le demander à l'utilisateur, on le compose à l'enregistrement :

  1. Si le champ Titre a été supprimé du formulaire, réinsérez-le avec Champs > Ajouter un champ.
  2. Déverrouillez la carte, puis dans sa propriété Update, composez un texte avec la salle et la date, par exemple SalleChoisie & " " & Text(DateDebut; "yyyy-mm-dd hh:mm").
  3. Mettez la propriété Visible à false : le champ est rempli, mais l'utilisateur ne le voit pas.

Si le titre affiche une date de 1970, la date a été oubliée : utilisez bien le DateTime complet, pas seulement l'heure.

Étape 6 : tester, puis publier

Testez ces quatre cas avant de publier :

  1. fin avant début : refus
  2. créneau libre : réservation enregistrée
  3. même salle, créneau qui chevauche : refus
  4. autre salle, même horaire : réservation enregistrée

Puis cliquez sur Enregistrer et Publier, et ajoutez l'application à Microsoft Teams. Vos équipes réservent sans quitter Teams et la liste se remplit toute seule.

Erreurs fréquentes et bonnes pratiques sur Power Apps

  • Parenthèses oubliées : dans une longue formule, vérifiez d'abord que chaque DateTime, Filter, IsEmpty et If est bien fermé.
  • .Value mal placé : il faut l'utiliser pour une colonne de choix, pas pour une date.
  • Conversion en trop : l'erreur « Impossible de convertir la valeur en date ou heure » vient souvent d'une conversion appliquée à l'heure ou à la minute, qui sont déjà des nombres.

Enregistrez régulièrement et testez après chaque modification. Pour aller plus loin, combinez l'application avec un flux Power Automate, par exemple pour envoyer un e-mail de confirmation à chaque réservation.

Martin

Martin est CTO de Solpedinn depuis sa création. Diplômé de Sciences Politiques, Martin souhaite mettre ses compétences au service de ses passions : le jeu, la pédagogie et la technique. C’est en associant ces trois sciences que l’identité de Solpedinn s’est créée et grâce à son savoir-faire qu’elle s’est développée.