diff --git a/matlab/utilities/dataset/makedataset.m b/matlab/utilities/dataset/makedataset.m
index 2d3e9d9064e12eef636a227fa316308e35ba7d72..cfeb137fb7ea4d712f30f10eee42e96e17a6cba6 100644
--- a/matlab/utilities/dataset/makedataset.m
+++ b/matlab/utilities/dataset/makedataset.m
@@ -119,7 +119,11 @@ end
 % Load the data in a dseries object.
 if ~isempty(datafile)
     if ~( newdatainterface==0 && (strcmp(datafile(end-1:end),'.m')|| strcmp(datafile(end-3:end),'.mat')))
-        DynareDataset = dseries(datafile);
+        if strcmp(datafile(end-3:end),'.xls') || strcmp(datafile(end-3:end),'.xlsx')
+            DynareDataset = dseries(char(datafile,DynareOptions.xls_sheet,DynareOptions.xls_range));
+        else
+            DynareDataset = dseries(datafile);
+        end
     else
         if strcmp(datafile(end-1:end),'.m')
             % Load an m file with the old interface.