In addition to the advice about
DBD::Excel and
DBD::CSV, you may also get good mileage with
DBD::ODBC since Excel is an ODBC data source. I advise testing a bit with each method. If you have things liked embedded carriage returns in your cells and they don't get converted correctly, switch DBDs. If your data is regular (by M$ standards), any of the DBDs should work.