xlsread with sheet selection and xlRange

I am using xlsread as such:
subset = xlsread(filename, sheet, xlRange)
In particular:
filename = 'nameF';
sheet = 'sheet1';
xlRange = 'A1'; % I use one column to cover or using sheet and xlRange together
subsetA = xlsread(filename, sheet, xlRange)
I get this:
subsetA =
[]
Same result when I use xlRange = 'A1:B1'
The purpose is to select particular columns from that sheetX of WorkbookY. Any recommendation?
Thank you
Eleftheria

 Accepted Answer

OCDER
OCDER on 15 Sep 2017
Edited: OCDER on 15 Sep 2017
Looks like your excel file has nothing but string data, hence the 1st output of xlsread will give you empty (no numeric data to show). Here's more info on xlsread .
Try the following, and use the data you need:
[NumData, TextData, AllData] = xlsread(filename, sheet, xlRange)
Also, A1:B1 will only select the 1st row of A to B. Use xlRange = 'A:B' to select the A and B columns instead.

3 Comments

Thank you Donald, there was a string starting my file that I was unaware.
Is it possible xlRange be a vector, e.g. xlRange = [1 2 4 20 30]?
Thank you again
I don't think you can do this, although it'd be a nice feature. Based on the document, xlRange must specify a "Rectangular range, specified as a character vector or a string."
So a workaround would be to load everything, and then select what you want.
[~, ~, AllData] = xlsread(filename, sheet);
AllData = AllData(:, xlRange);
Good idea and it works. Thank you Eleftheria

Sign in to comment.

More Answers (1)

Hi,
I wanted to import data using xlsread command from each sheet (There are 750 sheets). In range I wanted to import data from selected columns let's suppose from E to M. In each sheet number of rows are different.
Can you please assist me how I can import data from each row using xlsread command.

4 Comments

Is there a reason you have not switched to readtable() or readmatrix()?
Yes, because I'm working on Treasury bonds for which dates are important. Extracting data using readtable command is creating problem with the date variables.
Which MATLAB release are you using? readtable does a pretty good job on dates as datetime objects. Sometimes you need to setvaropts to set input format though. Can you attach about 3 rows from one of the tables for testing?
Please find attached the requested file.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!