MATLAB Function Reference

Read Microsoft Excel spreadsheet file (`.xls`)

Syntax

• ```A = xlsread('filename')
```

Description

`A = xlsread('filename')` returns numeric data in array `A` from the first sheet in Microsoft Excel spreadsheet file named filename. `xlsread` ignores leading rows or columns of text. However, if a cell not in a leading row or column is empty or contains text, `xlsread` puts a `NaN` in its place in `A`.

`[A, B]= xlsread('filename')` returns numeric data in array `A`, text data in cell array `B`. If the spreadsheet contains leading rows or columns of text, `xlsread` returns only those cells in `B`. If the spreadsheet contains text that is not in a row or column header, `xlsread` returns a cell array the same size as the original spreadsheet with text strings in the cells that correspond to text in the original spreadsheet. All cells that correspond to numeric data are empty.

`[...]= xlsread('filename','sheetname')` read sheet specified in `sheetname`. Returns an error if `sheetname` does not exist. To determine the names of the sheets in a spreadsheet file, use `xlsfinfo`.

Handling Excel Date Values

When reading date fields from Excel files, you must convert the Excel date values into MATLAB date values. Both Microsoft Excel and MATLAB represent dates as serial days elapsed from some reference date. However, Microsoft Excel uses January 1, 1900 as the reference date and MATLAB uses January 1, 0000.

For example, if your Excel file contains these date values,

• ```4/12/00
4/13/00
4/14/00
```

use this code to convert the dates to MATLAB dates.

• ```excelDates = xlsread('filename')
matlabDates = datenum('30-Dec-1899') + excelDates
datestr(matlabDates,2)
ans =

04/12/00
04/13/00
04/14/00
```

Examples

Example 1 - Reading Numeric Data

The Microsoft Excel spreadsheet file, `testdata1.xls`, contains this data:

• ```    1    6
2    7
3    8
4    9
5   10
```

To read this data into MATLAB, use this command:

• ```A = xlsread('testdata1.xls')
A =
1    6
2    7
3    8
4    9
5   10
```

Example 2 - Handling Text Data

The Microsoft Excel spreadsheet file, `testdata2.xls`, contains a mix of numeric and text data.

• ```    1    6
2    7
3    8
4    9
5   text
```

`xlsread` puts a `NaN` in place of the text data in the result.

• ```A = xlsread('testdata2.xls')
A =
1    6
2    7
3    8
4    9
5   NaN
```

Example 3 - Handling Files with Row or Column Headers

The Microsoft Excel spreadsheet file, `tempdata.xls`, contains two columns of numeric data with text headers for each column:

• ```Time  Temp
12     98
13     99
14     97
```

If you want to import only the numeric data, use `xlsread` with a single return argument. `xlsread` ignores a leading row or column of text in the numeric result.

• ```ndata = xlsread('tempdata.xls')

ndata =

12    98
13    99
14    97
```

To import both the numeric data and the text data, specify two return values for `xlsread.`

• ```[ndata, headertext] = xlsread('tempdata.xls')
ndata =

12    98
13    99
14    97

`wk1read`, `textread`, `xlsfinfo`