提取 Excel 列方向的表格数据

 

常见的Excel数据表,都是数据记录位于行方向,即记录数据都在同一行。但也有一些特殊的Excel表格,数据记录是位于列方向。从这种表格中提取数据,需要先将数据读成序列的序列,再用transpose转置函数转换成常见的行式表格,然后用之构建数据集。

 

举例

有课程起始日期表book1.xlsx,数据如下图所示:

..

编写SPL脚本:


A

1

=file("E:/work/book1.xlsx").xlsimport@w()

2

=transpose(A1)

3

=create(${A2(1).concat@c()}).record(A2.to(2,).conj())

A1   读入book1.xlsx文件数据,选项@w表示将数据读成序列的序列,如下图所示

..

A2   A1的序列进行行列互换,结果如下图所示

..

A3   A2中的第1个成员为列名构造序表,其它成员为记录追加到序表中