I use the [following code][1] to count user posts by specific post type:

    function count_user_posts_by_type( $userid, $post_type ) {
    	global $wpdb;
    	$where = get_posts_by_author_sql( $post_type, TRUE, $userid );
    	$count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->posts $where" );
    	return apply_filters( 'get_usernumposts', $count, $userid );
    }
    
    // Echo Count
    echo count_user_posts_by_type( $user_ID, 'reports' );

Looking for an elegant solution to limit posts by dates. For example, last week\month posts.

  [1]: https://wordpress.stackexchange.com/questions/43549/count-user-posts-by-user-id-post-type-and-post-status