GETXLS is a GUI that allows you to easily transfer data from an Excel file into Matlab's workspace.
Updated 26 Aug 2019

View License

There are of course many ways to import data from an Excel file into Matlab. For instance, by clicking on an Excel file in the 'Current Folder' window within Matlab, one can select data and then push it into a variable in the base workspace. One can also use 'xlsread' to import data programmatically. Moreover, with the ExcelLink Toolbox, you can easily transfer data between Excel and Matlab in both directions, if you have this toolbox (which I don't). 'getxls' is just another possibility which, personally, I find often easier for quickly getting the data into Matlab. The GUI allows you to import either the raw data, just the numeric cells, only the dates cells, only string cells, or the formulas in the speadsheet. If you choose to import only date cells, then the GUI transforms the Excel date code to the corresponding Matlab date code.

The program can be instructive for other software developers as it has a few possibly unusual features. First of all, this GUI was created programmatically, without the help of GUIDE. This makes it, I think, somewhat more transparent. Secondly, and contrary to the code generated with GUIDE, it uses nested functions, which has the advantage that all variables that are defined in the main function are also in the scope of the nested functions. Thirdly, the program demonstrates how to use the Excel COM server. And finally, it demonstrates how to access Matlab's editor and create a new Matlab skript programmatically.

Acknowledgement: A small part of the program is heavily inspired by XLSREAD.

Please comment if you like it or if you find it useful.

Cite As

Yvan Lengwiler (2024). getxls (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Added ability to retrieve Excel formulas.

'editorservices' is no longer supported by the latest version of ML. The new version of GETXLS adapts to this change.

Fixed bug that happened when only a single cell is selected. Moreover, showing Row/Col headings is now the default.

- If no range is selected, the whole worksheet is imported.
- 'Generate M-File' now reads the variablename and uses it for the generated script.

Fixed a minor bug that caused the variable to be pushed to the base workspace twice sometimes.

these updates:
- added 'generate m-file' functionality
- fixed bug when resizing window too small
- fixed bug that manifested on empty worksheets

Added 'Dates' filter to extract only cells that have some date format.

Some improvements:
(1) callback to edVariable,
(2) toggle row/col headings and buttons for font size,
(3) use of 'genvarname' in case the user selects an invalid variable name,
(4) 'style' argument,
(5) tooltip texts to all objects in the GUI.