WP Upload section is designed for media files. That’s why your code would work for some custom media file type, but not for XLS. To enable any kind of file you need to disable default upload type limitation by adding this to your wp-config.php
define( 'ALLOW_UNFILTERED_UPLOADS', true );