MS365-Schul-Tools

Werkzeug: Kursteams

Unterrichtsdaten aus WebUntis, Sokrates oder Excel importieren oder manuell erfassen → Team-Namen generieren → Kursteam-Anlage.cmd per Doppelklick starten.

Hilfe, Datenschutz & Windows-Hinweise

Unterrichtsteams anlegen

Einmalig sauber vorgehen – in 6 Schritten zu fertigen Klassen-Teams.

So funktioniert es: Daten importieren oder manuell eingeben, Lehrer-E-Mails prüfen, Team-Namen generieren → Kursteam-Anlage.cmd herunterladen und per Doppelklick starten.

Kurzanleitung

  • 1Unterrichtsdaten importieren (WebUntis, Sokrates, Excel) oder manuell eingeben
  • 2Fächer bereinigen – ORD, DIR, KV automatisch herausfiltern
  • 3Lehrer-Kürzel → E-Mail zuordnen (aus Stammdaten oder Paste)
  • 4Team-Namen generieren & prüfen
  • 5Kursteam-Anlage.cmd herunterladen und per Doppelklick starten (MFA-fähig)
  • +Optional: Schüler als Mitglieder per PowerShell-Script hinzufügen

Datei oder Paste importieren

WebUntis-Export, Sokrates-CSV oder eigene Excel-Vorlage – wird automatisch erkannt und eingelesen.

Manuell erfassen

Unterrichtszeilen (Klasse, Fach, Lehrkraft, optional Gruppe) einzeln eingeben – für wenige Teams oder zum Ergänzen.

Einzelne Teams

Ein oder mehrere fehlende Unterrichtsteams ohne Stundenplan-Import – Zeile für Zeile eintragen und anlegen.

Schritt 1 – Daten importieren

Unterrichtsdaten aus WebUntis, Sokrates, Excel oder per Copy&Paste einlesen.

WebUntis-Export: In WebUntis unter Administration → Export bei Unterricht die Datei erzeugen (CSV oder Excel) und rechts hochladen – Spalten subject, teacher, klassen werden erkannt. Alternativ Stundenliste markieren → links einfügen → Übernehmen.
WebUntis: Administration → Export → bei Unterricht CSV oder Excel herunterladen (Export Lessons)
Pfad in WebUntis: Administration → Export → Zeile „Unterricht“ (CSV/Excel).

Copy & Paste

Spalten: Kürzel Fach Klasse – Tab, | oder Leerzeichen als Trenner

Datei hochladen

Datei hier ablegen oder klicken

CSV, XLSX, XLS

Vorlage ausfüllen & hochladen
Vollständige Fächerliste mit Spalten z. B. U-Nr, Lehrer, Fach, Klasse(n), Schülergruppe.

Schritt 2 – Fächer bereinigen

Verwaltungsfächer ausschließen, Duplikate entfernen und die Datenliste prüfen.

Fächer ausschließen

Klicken Sie ein Fach an, um es auszuschließen (Haken = ausgeschlossen). Nummerierte Varianten (z. B. OMAI1/OMAI2) erscheinen als Familie. Standard: ORD, DIR, KV sind bereits markiert.

Duplikate & Filter anwenden

Empfohlen für Schwerpunkte und geteilte Fächer (z. B. BESPM1AK1BK, ETH, OMAI, ENWS): aus 1AK~1BK bzw. gleicher Schülergruppe wird ein Kursteam statt eines Teams pro Klasse. Abschalten, wenn wirklich je Klasse ein eigenes Team gewünscht ist.

WebUntis speichert Parallelgruppen oft im Fachkürzel. Die Normalisierung übernimmt die Ziffer in die Gruppe (nur wenn diese noch leer ist).

Schritt 3 – Daten prüfen & ergänzen

Zeilen bearbeiten, löschen oder manuell hinzufügen. Sortierung per Klick auf Spalten-Kopf.

ℹ️ Tipp: Doppelklicken Sie auf eine Zelle, um sie zu bearbeiten. Mit Enter speichern, mit Esc abbrechen.

Filter & Sortierung

Sortierung: Klicken Sie auf eine Spaltenüberschrift (Klasse/Fach/Lehrer/Gruppe) für aufsteigend/absteigend.

Schritt 4 – Lehrer-E-Mails zuordnen

Kürzel → E-Mail. Stammdaten-Treffer werden beim Öffnen dieses Schritts automatisch zugeordnet und bei Änderungen mitgespeichert.

Neue Lehrer-Liste importieren (Copy&Paste oder Datei)

Copy & Paste

Trenner: Tab oder Semikolon

Datei hochladen

Lehrer-Liste ablegen oder klicken

CSV oder Excel – Spalten Kürzel & E-Mail

Schritt 5 – Team-Namen konfigurieren

Schuljahr-Präfix, Namens-Schema und Trenner festlegen, dann Team-Namen generieren.

Team-Namen

Für automatisch erzeugte Lehrer-E-Mails wird Kürzel@<Domain> verwendet – die Domain steht oben.

Bei Parallelgruppen denselben Basisnamen: Baustein Gruppe oder Lehrer im Namensschema ergänzen, sonst kollidieren Namen/Mails. „Intelligentes Präfix“ kürzt z. B. 1HMA,1HMB zu 1HMAB bzw. 1HMA,1HMB,2HMA,2HMB zu 12HMAB.

Die generierte (bereinigte) Team-Liste wird als Unterrichtsbelegung in den App-Daten des aktuellen Schuljahres gespeichert und mit dem Browser-Backup mitexportiert – z. B. für spätere Module wie Klassen-Chats.

Schritt 7 – Schüler als Mitglieder (optional)

Schülerliste hochladen und PowerShell-Script zum Befüllen der Teams generieren.

Dieser Schritt ist optional. Er erzeugt ein PowerShell‑Script (Microsoft.Graph), das nach der Team‑Anlage Schüler als Mitglieder in die jeweiligen Gruppen/Teams einträgt.
Format: pro Zeile Klasse;UPN oder Klasse;Gruppe;UPN (Gruppe = z. B. G1/G2 für Sprachgruppen).
Wenn ein Kursteam eine Gruppe (z. B. G1) hat, wird bevorzugt die passende Klasse;Gruppe‑Liste verwendet, sonst die Klassenliste.

Microsoft Graph im Browser

Zuerst Kursteams aus Microsoft laden: Es werden alle Team-Gruppen im Mandanten per Graph abgefragt (mailNickname). Anschließend werden Schüler den passenden Teams nach Klasse/Gruppe (wie in der Liste) zugeordnet – dieselbe Logik wie beim PowerShell-Skript.

Schülerliste einfügen

Copy & Paste

Trenner: Semikolon, Tab, | oder mehrere Leerzeichen. Leere Zeilen und Zeilen mit # am Anfang werden ignoriert.

Datei hochladen

Schülerliste hier ablegen oder klicken

CSV oder Excel mit Klasse, optional Gruppe, UPN/E-Mail

Erwartete Spalten: Klasse, optional Gruppe, sowie UPN/E-Mail (z. B. UPN, E-Mail, Email).

Zusammenfassung

Zeilen (gültig)
0
Klassen erkannt
0
Klasse+Gruppe Listen
0

Teams auswählen

Hier können Sie festlegen, welche Kursteams Mitglieder bekommen. Standard: nur Teams, für die passende Schülerdaten gefunden wurden.

Auswahl Team Gruppenmail Schüler gefunden
Noch keine Teams oder Schülerliste – zuerst oben übernehmen.
Hinweis: Teams ohne gefundene Schüler werden nicht befüllt, auch wenn sie ausgewählt sind.

Generiertes PowerShell‑Script

# Sobald eine Schülerliste übernommen wurde, erscheint hier das Script.

Schritt 6 – Kursteams anlegen

Kursteams online über das Azure-Backend anlegen oder alternativ die CMD-Datei per Doppelklick starten.

Online anlegen (Azure-Backend)

Sendet Ihre Team-Liste an die Kursteams-API (App-Only, Template educationClass). Fortschrittsbalken, geschätzte Restzeit und scrollbares Protokoll – Seite während des Jobs geöffnet lassen.

Konfiguration: ms365-config.js (URL und Scope). Mandant und Tenant-Lizenz werden serverseitig aus Ihrer Microsoft-Anmeldung geprüft (Kursteams.Create + License.Access).

Kursteam-Anlage.cmd

Enthält alle Teamdaten eingebettet – keine separate CSV nötig. Erstellt Teams mit New-Team -Template EDU_Class (wie bisher), ergänzt um:

  • Checkpoint/Fortsetzen nach Abbruch (Kursteam-Anlage-checkpoint.json)
  • Retry bei Drosselung statt sofortigem Fehler
  • ETA-Fortschritt, Log-Datei, Hinweis bei Entra-250-Limit
Alternative: einfache Variante (ohne Checkpoint)

Kursteam-Anlage-einfach.cmd

Minimales Script: feste 2-Sekunden-Pause, keine Fortsetzung nach Abbruch. Sinnvoll für wenige Teams oder wenn Sie bewusst die schlanke Version wollen.

✅ Bereit zum Export!
Teams zum Export
0

CSV-Vorschau

TeamName,Gruppenmail,Besitzer

Admin-Konto mit Teams-Rechten erforderlich. Nach dem CMD-Download: Doppelklick starten. Die Teams-Bereitstellung in Microsoft 365 kann im Hintergrund noch Stunden dauern.

PowerShell (eingebettet, wie CMD oben):

# Wird beim Öffnen von Schritt 7 mit Ihren Teamdaten gefüllt …
Alternative: CSV + einfaches PowerShell-Script
Script im selben Ordner wie neueteams.csv ausführen.
$TeamsList = Import-Csv -Path .\neueteams.csv -Encoding UTF8
Connect-MicrosoftTeams
…
Warum jedes Schuljahr neu?

Kursteams folgen dem Schulalltag: jedes Jahr × jede Klasse × jedes Fach (und bei Bedarf jede Gruppe) erhält ein eigenes Unterrichtsteam – so wie der Unterricht abgerechnet und dargestellt wird. Ein neues Schuljahr bedeutet neue Klassen und damit neue Kursteams; alte Teams gehören zum Vorjahr und werden nicht „weiterverwendet“.