diff --git a/app/controllers/admin/courses.php b/app/controllers/admin/courses.php
index aa56bfbad73094b51532817470828b3c8e77cd49..6f9312d98aa74d00844f9e4fc13be0eaaf906014 100644
--- a/app/controllers/admin/courses.php
+++ b/app/controllers/admin/courses.php
@@ -302,7 +302,7 @@ class Admin_CoursesController extends AuthenticatedController
     public function index_action()
     {
         $this->fields = $this->getViewFilters();
-        $this->sortby = $GLOBALS['user']->cfg->MEINE_SEMINARE_SORT ?? 'name';
+        $this->sortby = $GLOBALS['user']->cfg->MEINE_SEMINARE_SORT ?? (Config::get()->IMPORTANT_SEMNUMBER ? 'number' : 'name');
         $this->sortflag = $GLOBALS['user']->cfg->MEINE_SEMINARE_SORT_FLAG ?? 'ASC';
 
         $this->buildSidebar();
@@ -788,11 +788,6 @@ class Admin_CoursesController extends AuthenticatedController
                 $template->course = $course;
                 $d['action'] = $template->render();
                 break;
-            case 22: //Masssenexport Teilnehmendendaten
-                $template = $tf->open('admin/courses/batch_export_members');
-                $template->course = $course;
-                $d['action'] = $template->render();
-                break;
             default:
                 foreach (PluginManager::getInstance()->getPlugins('AdminCourseAction') as $plugin) {
                     if ($GLOBALS['user']->cfg->MY_COURSES_ACTION_AREA === get_class($plugin)) {
diff --git a/resources/vue/components/AdminCourses.vue b/resources/vue/components/AdminCourses.vue
index a0f928c370fd6f5cb457d046c04023bade05ad36..2bc49985119aafbee702dcf7fc15a0decd96fa0e 100644
--- a/resources/vue/components/AdminCourses.vue
+++ b/resources/vue/components/AdminCourses.vue
@@ -248,6 +248,16 @@ export default {
 
             if (sortby === 'last_activity') {
                 sortFunction = (a, b) => a.last_activity_raw - b.last_activity_raw;
+            } else if (sortby === 'name') {
+                sortFunction = (a, b) => {
+                    return collator.compare(striptags(a.name), striptags(b.name))
+                        || collator.compare(striptags(a.number), striptags(b.number));
+                };
+            } else if (sortby === 'number') {
+                sortFunction = (a, b) => {
+                    return collator.compare(striptags(a.number), striptags(b.number))
+                        || collator.compare(striptags(a.name), striptags(b.name));
+                };
             } else {
                 let is_numeric = true;
                 for (let i in array) {