Delete excel row using matlab

4 views (last 30 days)
Nagham Kabbara
Nagham Kabbara on 12 Nov 2015
Commented: Nagham Kabbara on 16 Nov 2015
hi, i am trying to delete one row from a specific excel sheet (i want to delete the whole row i don't want to clear the values)
Excel = actxserver('Excel.Application');
Workbook = Excel.Workbooks.Open(filepath);
sheet1=Excel.Worksheets.get('Item',mysheet);
sheet1.Rows.Item(nbrow).Delete
Workbook.Save;
Workbook.Close;
delete(Excel);
but when i look into the excel the row isn't deleted!! am i missing something here??

Answers (1)

Image Analyst
Image Analyst on 12 Nov 2015
Make Excel visible:
Excel.Visible = true;
Then set a breakpoint on the .delete line and check by looking in Excel itself if the row is deleted when you stop on the delete line.
Or try it this way:
rangeReference = sprintf('A%d..Q200', rowNumber); % Whatever range you want....
Excel.Range(rangeReference).Select;
worksheets.Item(2).Range(rangeReference).Delete;
Excel.Range('A1').Select; % Set current cell to A1
  1 Comment
Nagham Kabbara
Nagham Kabbara on 16 Nov 2015
my method still didn't work (i don't know why honestly), so i had to use the function you suggested and it worked. thanks!

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!