diff --git a/app/scodoc/sco_formsemestre_status.py b/app/scodoc/sco_formsemestre_status.py
index ba49dec9d3c47baa5fd940eeea70d8902bc14e4c..c530bd1756586a4ebe02cbc00229b3e4f93112ac 100755
--- a/app/scodoc/sco_formsemestre_status.py
+++ b/app/scodoc/sco_formsemestre_status.py
@@ -320,7 +320,7 @@ def formsemestre_status_menubar(formsemestre: FormSemestre | None) -> str:
         },
         {
             "title": "Import/export des données admission",
-            "endpoint": "scolar.form_students_import_infos_admissions",
+            "endpoint": "scolar.form_import_infos_admissions",
             "args": {"formsemestre_id": formsemestre_id},
             "enabled": current_user.has_permission(Permission.ScoView),
         },
diff --git a/app/scodoc/sco_import_etuds.py b/app/scodoc/sco_import_etuds.py
index 74d7a5aaa780a6b35812bb54fe8e9ada0f39a017..5e129d69ddf656c9922efa17f07811dff934d204 100644
--- a/app/scodoc/sco_import_etuds.py
+++ b/app/scodoc/sco_import_etuds.py
@@ -687,7 +687,7 @@ def scolars_import_admission(
                 else "colonnes nom et prenom requises"
             ),
             dest_url=url_for(
-                "scolar.form_students_import_infos_admissions",
+                "scolar.form_import_infos_admissions",
                 scodoc_dept=g.scodoc_dept,
                 formsemestre_id=formsemestre_id,
             ),
@@ -732,7 +732,7 @@ def scolars_import_admission(
                             f"""scolars_import_admission: valeur invalide, ligne {
                                 nline} colonne {field_name}: '{line[idx]}'""",
                             dest_url=url_for(
-                                "scolar.form_students_import_infos_admissions",
+                                "scolar.form_import_infos_admissions",
                                 scodoc_dept=g.scodoc_dept,
                                 formsemestre_id=formsemestre_id,
                             ),
@@ -829,7 +829,7 @@ def adm_get_fields(titles, formsemestre_id: int, use_etudid: bool = False):
                         raise ScoFormatError(
                             f"""scolars_import_admission: titre "{title}" en double (ligne 1)""",
                             dest_url=url_for(
-                                "scolar.form_students_import_infos_admissions",
+                                "scolar.form_import_infos_admissions",
                                 scodoc_dept=g.scodoc_dept,
                                 formsemestre_id=formsemestre_id,
                             ),
diff --git a/app/static/css/scodoc.css b/app/static/css/scodoc.css
index 99c44367fc872c7838f78cdb8df02d8312ce0ac0..2bd994ec5426d35a217a4bb771f606fa9686ed39 100644
--- a/app/static/css/scodoc.css
+++ b/app/static/css/scodoc.css
@@ -58,6 +58,11 @@ div.sco-app-content {
   margin-right: 12px;
 }
 
+.vspaced {
+  margin-top: 18px !important;
+  margin-bottom: 18px !important;
+}
+
 .space-before-18 {
   margin-top: 18px !important;
 }
diff --git a/app/templates/formsemestre/form_import_infos_admissions.j2 b/app/templates/formsemestre/form_import_infos_admissions.j2
new file mode 100644
index 0000000000000000000000000000000000000000..c3aaa8ce8ac6503ce823edcd2c85dac6d1425998
--- /dev/null
+++ b/app/templates/formsemestre/form_import_infos_admissions.j2
@@ -0,0 +1,76 @@
+{% extends "sco_page.j2" %}
+{% import 'wtf.j2' as wtf %}
+
+{% block styles %}
+{{super()}}
+{% endblock %}
+
+{% block app_content %}
+<h2 class="formsemestre">Téléchargement des informations sur les étudiants</h2>
+
+<div class="scobox help explanation">
+    <p>
+    Cette page peut être utilisé pour exporter ou importer / modfiier les informations
+    concernant les étudiants et leur admission.
+    </p>
+    <p>Ces informations sont facultatives mais souvent utiles pour mieux connaitre les étudiants
+        et aussi pour effectuer des statistiques (résultats suivant le type de bac...).
+        Les données sont affichées sur les fiches individuelles des étudiants.
+    </p>
+    <ul>
+        <li>origine des étudiants (lycées, bac, etc);</li>
+        <li>type d'admission (Parcoursup, autre);</li>
+        <li>placement dans les groupes et parcours.</li>
+    </ul>
+
+    <p>
+    Seuls les étudiants actuellement inscrits dans ce semestre ScoDoc seront affectés,
+    les autres lignes de la feuille seront ignorées.
+    Et seules les colonnes intéressant ScoDoc
+    seront importées: il est inutile d'éliminer les autres.
+    </p>
+
+
+    <p>
+        <em>Seules les données "admission" seront modifiées
+        (et pas l'identité de l'étudiant).</em>
+    </p>
+    <p>
+        <em>Les colonnes "nom" et "prenom" sont requises,
+        ou bien une colonne "etudid" si la case
+        "Utiliser l'identifiant d'étudiant ScoDoc" est cochée.
+        </em>
+    </p>
+</div>
+
+<div class="scobox">
+    <div class="scobox-title">Exportation des données</div>
+    Avant d'importer vos données, il est recommandé d'enregistrer
+    les informations actuelles:
+    <div class="vspaced">
+    <a class="stdlink" href="{{
+        url_for('scolar.import_generate_admission_sample',
+                scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id)
+        }}">exporter les données actuelles de ScoDoc</a>
+    </div>
+    (ce fichier peut être ré-importé après d'éventuelles modifications)
+</div>
+
+<div class="scobox">
+    <div class="scobox-title">Importation des données</div>
+
+    {{ tf_form | safe }}
+</div>
+
+<div class="scobox explanation">
+
+Les colonnes importables par cette fonction sont indiquées dans la table ci-dessous.
+Seule la première feuille du classeur sera utilisée.
+
+    <div id="adm_table_description_format">
+        {{adm_table_description_format|safe}}
+    </div>
+
+</div>
+
+{% endblock %}
\ No newline at end of file
diff --git a/app/views/scolar.py b/app/views/scolar.py
index 28ead66f6205555536bb065e2c1b8e327c6639bc..b5c8a126b6ccb7063fdf60acc4206c3c6a082039 100644
--- a/app/views/scolar.py
+++ b/app/views/scolar.py
@@ -2343,11 +2343,11 @@ def import_generate_admission_sample(formsemestre_id):
 
 
 # --- Données admission depuis fichier excel (version nov 2016)
-@bp.route("/form_students_import_infos_admissions", methods=["GET", "POST"])
+@bp.route("/form_import_infos_admissions", methods=["GET", "POST"])
 @scodoc
 @permission_required(Permission.ScoView)
 @scodoc7func
-def form_students_import_infos_admissions(formsemestre_id=None):
+def form_import_infos_admissions(formsemestre_id=None):
     "formulaire import xls"
     authuser = current_user
     if not authuser.has_permission(Permission.EtudInscrit):
@@ -2356,8 +2356,8 @@ def form_students_import_infos_admissions(formsemestre_id=None):
             "sco_page.j2",
             title="Export données admissions (Parcoursup ou autre)",
             content=f"""
-        <h2 class="formsemestre">Téléchargement des informations sur l'admission
-        des étudiants</h2>
+        <h2 class="formsemestre">Téléchargement des informations sur
+        les étudiants (admission, ...)</h2>
         <p>
         <a href="{ url_for('scolar.import_generate_admission_sample',
             scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id )
@@ -2369,48 +2369,6 @@ def form_students_import_infos_admissions(formsemestre_id=None):
         )
 
     # On a le droit d'importer:
-    H = [
-        f"""<h2 class="formsemestre">Téléchargement des informations sur l'admission des étudiants
-        depuis feuilles import Parcoursup</h2>
-        <div style="color: red">
-            <p>A utiliser pour renseigner les informations sur l'origine des étudiants (lycées, bac, etc).
-            Ces informations sont facultatives mais souvent utiles pour mieux connaitre les étudiants
-            et aussi pour effectuer des statistiques (résultats suivant le type de bac...).
-            Les données sont affichées sur les fiches individuelles des étudiants.
-            </p>
-        </div>
-        <div class="help">
-        <p>
-        Vous pouvez importer ici la feuille excel utilisée pour envoyer
-        le classement Parcoursup.
-        Seuls les étudiants actuellement inscrits dans ce semestre ScoDoc seront affectés,
-        les autres lignes de la feuille seront ignorées.
-        Et seules les colonnes intéressant ScoDoc
-        seront importées: il est inutile d'éliminer les autres.
-        </p>
-        <p>
-        <em>Seules les données "admission" seront modifiées
-        (et pas l'identité de l'étudiant).</em>
-        </p>
-        <p>
-        <em>Les colonnes "nom" et "prenom" sont requises,
-        ou bien une colonne "etudid" si la case
-        "Utiliser l'identifiant d'étudiant ScoDoc" est cochée.
-        </em>
-        </p>
-        <p>
-        Avant d'importer vos données, il est recommandé d'enregistrer
-        les informations actuelles:
-        <a class="stdlink" href="{
-            url_for("scolar.import_generate_admission_sample",
-                    scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre_id)
-            }">exporter les données actuelles de ScoDoc</a>
-            (ce fichier peut être ré-importé après d'éventuelles modifications)
-        </p>
-        </div>
-        """,
-    ]
-
     tf = TrivialFormulator(
         request.base_url,
         scu.get_request_args(),
@@ -2439,26 +2397,17 @@ def form_students_import_infos_admissions(formsemestre_id=None):
             ),
             ("formsemestre_id", {"input_type": "hidden"}),
         ),
-        submitlabel="Télécharger",
-    )
-
-    help_text = (
-        """<p>Les colonnes importables par cette fonction sont indiquées
-        dans la table ci-dessous.
-    Seule la première feuille du classeur sera utilisée.
-    <div id="adm_table_description_format">
-    """
-        + sco_import_etuds.adm_table_description_format().html()
-        + """</div>"""
+        submitlabel="Importer",
     )
 
     if tf[0] == 0:
         return render_template(
-            "sco_page.j2",
-            title="Import données admissions Parcoursup",
-            content="\n".join(H) + tf[1] + help_text,
+            "formsemestre/form_import_infos_admissions.j2",
+            title="Import données admissions",
+            tf_form=tf[1],
+            adm_table_description_format=sco_import_etuds.adm_table_description_format().html(),
         )
-    elif tf[0] == -1:
+    if tf[0] == -1:
         return flask.redirect(
             url_for(
                 "notes.formsemestre_status",
@@ -2466,13 +2415,12 @@ def form_students_import_infos_admissions(formsemestre_id=None):
                 formsemestre_id=formsemestre_id,
             )
         )
-    else:
-        return sco_import_etuds.students_import_admission(
-            tf[2]["csvfile"],
-            type_admission=tf[2]["type_admission"],
-            formsemestre_id=formsemestre_id,
-            use_etudid=tf[2]["use_etudid"],
-        )
+    return sco_import_etuds.students_import_admission(
+        tf[2]["csvfile"],
+        type_admission=tf[2]["type_admission"],
+        formsemestre_id=formsemestre_id,
+        use_etudid=tf[2]["use_etudid"],
+    )
 
 
 @bp.route("/formsemestre_import_etud_admission")
diff --git a/sco_version.py b/sco_version.py
index 5f1901f3340a4ae79476e2cdd23cc63982ca391f..8c0bf96692b8193c2a6dae656475156316aa5735 100644
--- a/sco_version.py
+++ b/sco_version.py
@@ -1,7 +1,7 @@
 # -*- mode: python -*-
 # -*- coding: utf-8 -*-
 
-SCOVERSION = "9.7.14"
+SCOVERSION = "9.7.15"
 
 SCONAME = "ScoDoc"
 
diff --git a/tests/unit/test_formsemestre.py b/tests/unit/test_formsemestre.py
index 783c12320dd7a60fc698cf4f3d2d6f28ecb84dd1..64a7b307d82c7f939e581acb72605aaedd1c0e58 100644
--- a/tests/unit/test_formsemestre.py
+++ b/tests/unit/test_formsemestre.py
@@ -133,7 +133,7 @@ def test_formsemestre_misc_views(test_client):
     ans = sco_inscr_passage.formsemestre_inscr_passage(formsemestre.id)
     ans = call_view(scolar.form_students_import_excel, formsemestre.id)
     assert isinstance(ans, str)
-    ans = call_view(scolar.form_students_import_infos_admissions, formsemestre.id)
+    ans = call_view(scolar.form_import_infos_admissions, formsemestre.id)
     ans = sco_formsemestre_inscriptions.formsemestre_inscrits_ailleurs(formsemestre.id)
 
     # ----- MENU GROUPES