excel_read

Matlab 读取excel文件的函数:

  (1)readtable - 读取一个工作表。

  (2)spreadsheetDatastore - 读取多个工作表或文件。

 

 

一、readtable函数

   1、基本使用

    T = readtable("文件名",'Sheet','Sheet1','Range','A1')

    使用 Sheet名称-值对组参数指定工作表名称。如果数据位于文件的第一个工作表中,则不需要指定 Sheet

    

clc
SheetName = 'Sheet1';%Sheet的名称
xlRange = 'A1:B2';%读取A1到B2单元格的内容,读取制定的范围
xlRange1 = 'B:B';%读取某一列(B列)
xlRange2 = 'A1:A100';%读取某一列(B列)


%读取指定位置
T = readtable("test.xlsx",'Sheet',SheetName,'Range',xlRange);

%读取某一列
T_select = readtable("text.xlsx",'Sheet',SheetName,'Range',xlRange1);

%不提供Sheet和Range的参数,默认读取第一个Sheet的内容
T_select = readtable("text.xlsx");

   2、获取所读取的excel的行数和列数:

  使用的readtable函数返回的是一个table的类型数据,其中的数据可能有很多种,不能直接用length函数,应该使用以下三个:(1)height,(2)width,(3)size

  • size(T),直接返回table的行数和列数
  • height(T),直接返回table的行数,(可以理解为高度)
  • width(T),直接返回table的列数

 

二、spreadsheetDatastore函数(待定)

 

三、获取excel文件的Sheet数目和名称

  1、方法:sheets_name = sheetnames('D:\Users\zhuyingdi\Desktop\test.xlsx')

 

  2、代码(网络得到)

file_name = 'D:\Users\zhuyingdi\Desktop\test.xlsx';
sheet_name=xl_xlsfinfo(file_name)  %调用函数,将返回值赋值给sheet_name 

function [Sheets_Names]  = xl_xlsfinfo(file_name)
%%********************************************************************************
%   Name          : xl_xlsfinfo
%   Author        : Pruthvi Raj G
%   Version       : Version 1.0 - 2011b Compactible
%   Description   : Finds all the sheets in the Excel file (.xls,.xlsm,.xlsx)
%   Input         : File_Name with path included.
%   Date          : 11-Feb-2020
%
%   Examples      : xl_xlsfinfo('D:\Pruthvi\Test_file.xls')
%*********************************************************************************
% Open the Excel file (*.xls or *.xlsx).
Excel = actxserver('Excel.Application');
Excel.Workbooks.Open(file_name);

% Finding the Sheets.

workSheets = Excel.sheets;
for i = 1:workSheets.Count
    sheet = get(workSheets,'item',i);
    Sheets_Names{i} = sheet.Name;
end

Excel.DisplayAlerts = 0;
% Close Excel Sheet
Excel.ActiveWorkbook.Close;
% quit Excel Object
Excel.Quit;
Excel.delete;
end

 

 

 

 

 

  

  

posted @ 2020-09-06 11:39  ZYDTT  阅读(1299)  评论(0)    收藏  举报