[Users-fr] Fwd: import tableau excel
patrice metaireau
alfonse982000 at gmail.com
Mar 23 Aou 09:38:25 CEST 2016
bonjour,
merci beaucoup pour cette réponse.
c'est beaucoup plus simple et grâce aux options de la commande je peux
supprimer les 2 1ères lignes et les caractères accentués ou accents.
substitute=["é" "e";"è","e";"à","a" ];header=2
m = csvRead(chemin,";",".","string",substitute,[],[],header)
par contre sur les colonnes 9 et 11 j'ai des chiffres et ils sont
considérés comme des caractères (15+15=1515). peut on dans une même matrice
affecter des colonnes caractères et des colonnes chiffres ?
sinon : a=strtod(m(1,11),",");b=strtod(m(2,11),",");c=a+b ???
question 2 :les nombres ont une virgule. dois je mettre un point ? dans
"substitute" ou dans la fonction csvread ?
cordialement
P METAIREAU
Le 20 août 2016 à 01:35, Samuel Gougeon <sgougeon at free.fr> a écrit :
> Bonjour,
>
> Le 19/08/2016 22:13, patrice metaireau a écrit :
>
> bonjour,
>
> je souhaite importer le contenu d'un tableau excel2003 dans une matrice.
> le tableau excel (12 colonnes, 84 lignes) contient des chiffres (avec
> virgule), des chaines de caractères ,des dates, des cellules vides.
> comment faire simple? je ne m'en sort pas avec xls_open, xls_read et
> readxls !!!
>
> en alternative je fais ainsi avec un fichier .csv
>
> .
> Convertir votre fichier au format CSV est un bon début. Après cela, vous
> pouvez utiliser csvRead(), qui est très paramétrable :
> https://help.scilab.org/docs/6.0.0/fr_FR/csvRead.html
>
> Normalement, les cellules vides ne devraient pas poser de problème.
>
> Le résultat importé est une matrice de texte, pour toutes les colonnes.
> Il faut donc ensuite convertir les colonnes qui en réalité ne sont pas
> du texte.. en ce qu'elles doivent être.
> * pour les colonnes de nombres, utiliser:
> ma_colonne_de_nombres = evstr(ma_colonne_de_nombres_en_texte)
> * pour les dates: cela dépend sous quelle forme elles apparaissent en
> texte.
>
>
> chemin=uigetfile(["*.*"],'D:/user/travail/projets')
> fic=mopen(chemin,'rt')
> l=mgetl(fic,2)
> m=mgetl(fic)
> sz=size(m,1)
>
> for n = 1:sz
> p=m(n);p1=strsplit(p,";");p2=p1'
> q(n,1)=p2(1,1);q(n,2)=p2(1,2);q(n,3)=p2(1,3);q(n,4)=p2(1,4);
> q(n,5)=p2(1,5);q(n,6)=p2(1,6)
> q(n,7)=p2(1,7);q(n,8)=p2(1,8);q(n,9)=p2(1,9);q(n,10)=p2(1,10
> );q(n,11)=p2(1,11);q(n,12)=p2(1,12);
> end
>
> (mais cela me semble moche) :
>
> .
> csvRead() devrait mieux vous convenir ;)
>
> question subsidiaire :
> après modification de ma matrice (qui contiendra des chiffres, des chaines
> de caractères , des cellules vides.) peut on exporter au format XLS ?
>
> En csv, avec csvWrite()...
>
> Bon courage
> Samuel Gougeon
>
>
> _______________________________________________
> users-fr mailing list
> users-fr at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users-fr
>
>
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <https://lists.scilab.org/pipermail/users-fr/attachments/20160823/e0072fdf/attachment.htm>
Plus d'informations sur la liste de diffusion users-fr