Index: wp-admin/users.php
===================================================================
--- wp-admin/users.php	(revision 19932)
+++ wp-admin/users.php	(working copy)
@@ -338,6 +338,10 @@
 		wp_redirect( add_query_arg( 'paged', $total_pages ) );
 		exit;
 	}
+
+	if ( current_user_can( 'promote_users' ) && apply_filters( 'show_network_site_users_add_existing_form', true ) && !wp_is_large_network( 'users' ) )
+		wp_enqueue_script( 'user-search' );
+
 	include('./admin-header.php');
 
 	$messages = array();
Index: wp-admin/includes/ajax-actions.php
===================================================================
--- wp-admin/includes/ajax-actions.php	(revision 19932)
+++ wp-admin/includes/ajax-actions.php	(working copy)
@@ -155,20 +155,28 @@
 	
 	$return = array();
 
+	// Check the type of request
+	if ( isset( $_REQUEST['autocomplete_type'] ) )
+		$type = $_REQUEST['autocomplete_type'];
+	else
+		$type = 'add';
+
 	// Exclude current users of this blog
 	if ( isset( $_REQUEST['site_id'] ) )
 		$id = absint( $_REQUEST['site_id'] );
 	else
 		$id = get_current_blog_id();
 
-	$this_blog_users = get_users( array( 'blog_id' => $id, 'fields' => 'ID' ) );
+	$include_blog_users = ( $type == 'search' ? get_users( array( 'blog_id' => $id, 'fields' => 'ID' ) ) : array() );
+	$exclude_blog_users = ( $type == 'add' ? get_users( array( 'blog_id' => $id, 'fields' => 'ID' ) ) : array() );
 
 	$users = get_users( array(
 		'blog_id' => false,
 		'search'  => '*' . $_REQUEST['term'] . '*',
-		'exclude' => $this_blog_users,
+		'include' => $include_blog_users,
+		'exclude' => $exclude_blog_users,
 		'search_columns' => array( 'user_login', 'user_nicename', 'user_email' ),
-	) );	
+	) );
 
 	foreach ( $users as $user ) {
 		$return[] = array(
@@ -1675,4 +1683,4 @@
 
 	update_user_meta( get_current_user_id(), 'dismissed_wp_pointers', $dismissed );
 	wp_die( 1 );
-}
\ No newline at end of file
+}
Index: wp-admin/js/user-search.dev.js
===================================================================
--- wp-admin/js/user-search.dev.js	(revision 19932)
+++ wp-admin/js/user-search.dev.js	(working copy)
@@ -2,8 +2,14 @@
 	var id = typeof( current_site_id ) != 'undefined' ? '&site_id=' + current_site_id : '';
 
 	$( '#adduser-email, #newuser' ).autocomplete({
-		source:   ajaxurl + '?action=autocomplete-user' + id,
+		source:   ajaxurl + '?action=autocomplete-user&autocomplete_type=add' + id,
 		delay:    500,
 		minLength: 2
 	});
-});
\ No newline at end of file
+
+	$( '#user-search-input' ).autocomplete({
+		source:   ajaxurl + '?action=autocomplete-user&autocomplete_type=search' + id,
+		delay:    500,
+		minLength: 2
+	});
+});
Index: wp-admin/network/users.php
===================================================================
--- wp-admin/network/users.php	(revision 19932)
+++ wp-admin/network/users.php	(working copy)
@@ -247,6 +247,9 @@
 	'<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
 );
 
+if ( current_user_can( 'promote_users' ) && apply_filters( 'show_network_site_users_add_existing_form', true ) && !wp_is_large_network( 'users' ) )
+	wp_enqueue_script( 'user-search' );
+
 require_once( '../admin-header.php' );
 
 if ( isset( $_REQUEST['updated'] ) && $_REQUEST['updated'] == 'true' && ! empty( $_REQUEST['action'] ) ) {
