在xlsread中使用变量而不是字符串 - 为什么不工作?

时间:2013-10-04 18:27:45

标签: string matlab xlsread

我有一个文件名向量作为字符串,我试图在一个循环中逐个将它们送入xlsread。这是我的代码(对于很长的fnames列表感到抱歉):

all_u_fnames={'u_results_901.xls','u_results_902.xls','u_results_903.xls','u_results_904.xls','u_results_905.xls'...
'u_results_906.xls','u_results_907.xls','u_results_908.xls','u_results_909.xls','u_results_910.xls'...
'u_results_911.xls','u_results_912.xls','u_results_913.xls','u_results_914.xls','u_results_915.xls'...
'u_results_916.xls','u_results_917.xls','u_results_918.xls','u_results_919.xls','u_results_920.xls'...
'u_results_921.xls','u_results_922.xls','u_results_923.xls','u_results_924.xls','u_results_925.xls'...
'u_results_926.xls','u_results_927.xls','u_results_928.xls','u_results_929.xls','u_results_930.xls'};

for i = 1:length(all_u_fnames)

fnameU=all_u_fnames(i);

u1=xlsread(fnameU,'Point_5','A:U');
u2=xlsread(fnameU,'Point_6','A:U');
u3=xlsread(fnameU,'Point_7','A:U');
u4=xlsread(fnameU,'Point_8','A:U');

我一直收到错误Filename must be a string.

我输入xlsread的fnameU如何不是字符串?

谢谢, 亚历

1 个答案:

答案 0 :(得分:2)

尝试:

for i = 1:length(all_u_fnames)

fnameU=all_u_fnames{i};

您正在传递一个单元格元素。