diff --git a/src/main/java/org/olat/admin/user/UserSearchFlexiController.java b/src/main/java/org/olat/admin/user/UserSearchFlexiController.java
index 0af9923e07732f5fd9e460e28f544500f479015c..f1257abd6f0993f87951c23d922c5fd97b26e207 100644
--- a/src/main/java/org/olat/admin/user/UserSearchFlexiController.java
+++ b/src/main/java/org/olat/admin/user/UserSearchFlexiController.java
@@ -330,6 +330,10 @@ public class UserSearchFlexiController extends FlexiAutoCompleterController {
 		if(source == backLink) {
 			flc.contextPut("noList","false");			
 			flc.contextPut("showButton","false");
+			if(userTableModel != null) {
+				userTableModel.setObjects(new ArrayList<>());
+				tableEl.reset();
+			}
 		} else if(searchButton == source) {
 			if(validateForm(ureq)) {
 				doSearch();
@@ -385,7 +389,7 @@ public class UserSearchFlexiController extends FlexiAutoCompleterController {
 	
 	public List<Identity> getSelectedIdentities() {
 		Set<Integer> index = tableEl.getMultiSelectedIndex();		
-		List<Identity> selectedIdentities =	new ArrayList<Identity>();
+		List<Identity> selectedIdentities =	new ArrayList<>(index.size());
 		for(Integer i : index) {
 			Identity selectedIdentity = userTableModel.getObject(i.intValue());
 			selectedIdentities.add(selectedIdentity);
@@ -393,7 +397,7 @@ public class UserSearchFlexiController extends FlexiAutoCompleterController {
 		return selectedIdentities;
 	}
 	
-	private void doSearch() {
+	public void doSearch() {
 		String login = loginEl.getValue();
 		// build user fields search map
 		Map<String, String> userPropertiesSearch = new HashMap<String, String>();				
@@ -423,6 +427,7 @@ public class UserSearchFlexiController extends FlexiAutoCompleterController {
 	/**
 	 * @see org.olat.core.gui.control.DefaultController#doDispose(boolean)
 	 */
+	@Override
 	protected void doDispose() {
 		// Child controllers auto-disposed by basic controller
 	}
diff --git a/src/main/java/org/olat/course/member/wizard/ImportMemberBySearchController.java b/src/main/java/org/olat/course/member/wizard/ImportMemberBySearchController.java
index b4555cc380ab525dc5c80693cc540706e3b11b12..d65c4cf6345e854192668fbb266ca6087b81504a 100644
--- a/src/main/java/org/olat/course/member/wizard/ImportMemberBySearchController.java
+++ b/src/main/java/org/olat/course/member/wizard/ImportMemberBySearchController.java
@@ -20,7 +20,6 @@
 package org.olat.course.member.wizard;
 
 import java.util.ArrayList;
-import java.util.Collection;
 import java.util.Collections;
 import java.util.List;
 
@@ -44,18 +43,14 @@ import org.olat.core.id.Identity;
  * @author srosse, stephane.rosse@frentix.com, http://www.frentix.com
  */
 public class ImportMemberBySearchController extends StepFormBasicController {
-	//private UserSearchFlexiController searchController;
-	private UserSearchFlexiController searchController; 
+
+	private final UserSearchFlexiController searchController; 
 
 	public ImportMemberBySearchController(UserRequest ureq, WindowControl wControl, Form rootForm, StepsRunContext runContext) {
 		super(ureq, wControl, rootForm, runContext, LAYOUT_CUSTOM, "import_search");
 
-		//searchController = new UserSearchFlexiController(ureq, wControl, rootForm);
 		searchController = new UserSearchFlexiController(ureq, wControl, rootForm);
-		
-		
 		listenTo(searchController);
-		
 		initForm (ureq);
 	}
 
@@ -68,7 +63,7 @@ public class ImportMemberBySearchController extends StepFormBasicController {
 			fireEvent(ureq, StepsEvent.ACTIVATE_NEXT);
 		} else if(event instanceof MultiIdentityChosenEvent) {
 			MultiIdentityChosenEvent e = (MultiIdentityChosenEvent)event;
-			Collection<String> keys = new ArrayList<String>();
+			List<String> keys = new ArrayList<>();
 			for(Identity identity: e.getChosenIdentities()) {
 				keys.add(identity.getKey().toString());
 			}
@@ -82,12 +77,16 @@ public class ImportMemberBySearchController extends StepFormBasicController {
 	@Override
 	protected void formNext(UserRequest ureq) {
 		List<Identity> identities = searchController.getSelectedIdentities();
-		Collection<String> keys = new ArrayList<String>();
-		for(Identity identity: identities) {
-			keys.add(identity.getKey().toString());
+		if(identities.isEmpty()) {
+			searchController.doSearch();
+		} else {
+			List<String> keys = new ArrayList<>(identities.size());
+			for(Identity identity: identities) {
+				keys.add(identity.getKey().toString());
+			}
+			addToRunContext("keys", keys);
+			fireEvent(ureq, StepsEvent.ACTIVATE_NEXT);
 		}
-		addToRunContext("keys", keys);
-		fireEvent(ureq, StepsEvent.ACTIVATE_NEXT);
 	}
 
 	@Override