Bonjour à tous,
J'aimerai avoir votre avis sur la façon de lire un fichier Excel.
Je me trouve avec un(il y en a d'autre avec la même structure) fichier Excel comportant des données dispatché un peu partout. J'aimerai récupérer un certain nombre de cellule, le tout sur une seul ligne. Par exemple il y a des données en B4, B5, B6 et E4, E5, E6. On utilise un TFileInputExcel pour lire le fichier Excel et donc Talend va faire 3 tours pour lire les 3 lignes. On aura donc en sortie (2 colonnes et 3 lignes) un tableau qui sera sous la forme (B4, E4; B5,E5; B6;E6).
J'ai réussi à mettre tout sur la même ligne(façon bourrin) en lisant les cellules une par une avec un TFileInputExcel et un TSample_Row et après tout réunir dans un TMap. Mais si il y a 40 cellules à lire... Donc c'est obligé il doit y avoir une autre solution.
J'ai testé aussi avec un TJava. Ou, à chaque passage de ligne, il sauvegarde les données dans des variables globales. Mais je n'y suis pas parvenu.
C'était un truc du genre :
- Si c'est la première séquence tu sauvegarde la variable dans context.B4
- Si c'est la deuxième séquence du sauvegarde la variable dans context.B5
Mais je ne suis pas parvenu à gérer les séquences... Pour info c'était un truc du genre :
Voilà il doit y avoir d'autre moyen, si vous avez des idées je suis preneur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 if(context.seq_num == 1){ context.B4 = row3.B4; context.seq_num ++; } if(context.seq_num == 2){ context.B5 = row3.B5; context.seq_num ++; }
Merci d'avoir lu
Partager