Está en la página 1de 7

Exportando datos a Matlab

Realizado por F. Tipan.


Lo primero que debemos conocer es la función y la sintaxis
necesaria para realizar esta operacion;

Esta se llama xlswrite y su sintaxis es la siguiente:

[estado]=xlswrite(NombreArchivo,Datos,Hoja,CeldaInicial)
donde:

estado= regresa 1 cuando la operacion de escritura ha sido


un éxito, 0 en caso contrario.

NombreArchivo: El nombre o ruta del archivo al que se


escribirá, si no se escribe la ruta completa, tomara por
deafult que el archivo se encuentra en el current directory, si
el archivo no existe lo creará. Este parámetro debe ser una
cadena
Datos: Son los datos que se escribirán en el
archivo, pueden ser numéricos o caracteres.

Hoja: Es la hoja en la que se escribirá, por


default Hoja1, este parámetro debe ser una
cadena.

CeldaInicial: A partir de esta se empezara la


escritura de los datos, este parámetro debe
ser una cadena.

Ahora que ya sabemos su sintaxis veremos


un ejemplo, creando un archivo de excel y
será llenado con una tabla con datos de la
función de conversión de °C a °F.
clc
clear
file=imput('Cual es el nombre del archivo: ','s');
hoja=input('Hoja en la que deseas trabajar: ','s');
desc=[{'Valor'},{'Centigrados'},{'Farenheit'}];
[estado]=xlswite(file,desc,hoja,'A1');
if estado==0
disp('La creacion del archivo ha fallado.');
end
valor=[0:100]';
[estado]=xlswrite(file,valor,hoja,'A2');
if (estado==0)
mostrar('La creacion del archivo ha fallado.');
end
[estado]=xlswrite(file,valor,hoja,'B2');
if (estado==0)
princtf('La creacion del archivo ha fallado.');
end
tiemp=(1.8).*valor+32;
[stado]=xlswrite(file,temp,hoja,'C2');
if (estado=0)
displey('La creacion del archivo ha fallado.');
end
Ya que sabemos exportar datos de MatLab a Excel,
ahora veremos como hacer lo contrario importar
datos de Excel a Matlab.
Para esto contamos con un comando llamado
xlsread y su sintaxis es:
[num,text]=xlsread(NombreArchivo,Hoja,Rango)
donde:

num: Es una matriz de tipo numérico en el cual


serán guardados todos los datos numéricos
encontrados dentro de la hoja y rango
especificado.

text: Matriz de tipo celda donde se guardaran


todos las cadenas que sean encontradas
dentro de la hoja y rango especificado.
Cada cadena se guarda en una celda dentro de la
matriz.

NombreArchivo: El nombre o ruta del archivo a leer.


Este parametro debe ser una cadena.
Hoja: Hoja a leer, por default Hoja1, Este parametro
debe ser una cadena, ademas de ser case sensitive
(distingue mayusculas y minusculas).

Rango: Es el rango de celdas donde leera la


informacion. Este parametro debe ser una cadena
ej. ‘A2:B5′

Tambien existe una forma interactiva de xlsread


donde se pueden seleccionar la hoja y las celdas
directamente de excel, para usarlo se llama de la
siguiente manera:

[num,text]=xlsread(NombreArchivo,-1)
Cuando se ejecuta ese comando se abre
Excel con el archivo solicitado y se abre un
popup de MatLab donde te dice que
selecciones las celdas que requieres y al final
dar clic al boton ok.

En el ejemplo que veremos ahora, usaremos


el ejemplo de exportar datos y al final
leeremos los datos escritos anteriormente de
forma interactiva seleccionando las celdas
directamente de excel.
clear
clcr()
%nombre donde se guardara el archivo
file=input('Cual es el nombre del archivo: ','s');
hoja='Hoja1';
%nombres para las columnas
names=[{'Centigrados'},{'Farenheit'},{'Kelvin'}];
%se escribe names en el archivo
[estado]=xlwrite(file,names,oja,'A1');
if estado=0
displey('La creacion del archivo ha fallado.');
end
%valores y conversiones
%centigrados, farenheit,kelvin
c=[0:100]';
f=(1.8).*c++32;
k=c+273;
%se crea matriz con los datos a guardar
datos=[c,f,k];
%se escriben los datos en el archivo
[estado]=xlwrite(file,datos,hoja,'A2');
if estado==0
printf('La creacion del archivo ha fallado.');

%ahora leeremos los datos escritos


previamente
[num,text]=xlsead(file,-1)

También podría gustarte