2013-09-23 5 views
1

Я хотел бы сразу удалить все цифры в файле excel из MATLAB. Я могу выбрать все цифры с помощью activex, но я не могу определить способ их удаления.Удалить цифры Excel из Matlab

Мой код:

filename_out = 'Libraries\Documents\TEST.xlsx'; % filename 

Excel = actxserver('Excel.Application'); % open the connection 

set(Excel,'Visible',1); 

Excel.Workbooks.Open(filename_out); % open excel file 

worksheets = Excel.sheets; 

numSheets = worksheets.Count; % count the number of sheets 

for s = 1 : numSheets % do a loop for all sheets 

worksheets.Item(s).Shapes.SelectAll; % select the figure 
% How to delete selection? * 
end 

Спасибо за любую помощь!

ответ

1

В вашем цикле, сделать что-то вроде

myshapes = worksheets.Item(s).Shapes; 
for j = myshapes.Count:-1:1 
    myshapes.Item(j).Delete 
end 

Обратите внимание, что мы отсчет от myshapes.Count до 1, так как отсчет идет вниз каждый раз, когда вы удалите один.

+0

Спасибо, работает отлично! – cV17

+0

Если вы хотите окончательное полное решение: worksheets = Excel.sheets; numSheets = worksheets.Count; для s = 1: numSheets myshapes = worksheets.Item (s) .Shapes; для j = myshapes.Count: -1: 1 myshapes.Item (j) .Delete конец конец – cV17

Смежные вопросы