ExcelFile/test.tsl

199 lines
6.8 KiB
Plaintext
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

file := CreateObject("ExcelFile");//创建ExcelFile对象
[err, errinfo] := file.NewFile();//新建Excel文件文件格式默认为GBK
if err then
return println("NewFile: errorno={},errinfo={}", err, errinfo);
testing := 1;
PrintLn( "Test {} [创建ExcelFile] Ok...", testing++);
//富文本
[err, errinfo] := file.SetCellRichText("Sheet1", "A1", '[{"Font":{"bold":true,"italic":false,"underline":"none","family":"华文行楷","size":26,"strike":false,"color":"FF0000"},"Text":"深圳市"},{"Font":{"bold":true,"italic":false,"underline":"none","family":"华文行楷","size":48,"strike":false,"color":"A020F0"},"Text":"天软"},{"Font":{"bold":true,"italic":false,"underline":"none","family":"华文行楷","size":26,"strike":false,"color":"FF0000"},"Text":"科技开发有限公司"}]');
if err then
return println("SetCellRichText:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [富文本] Ok...", testing++);
//[err, txt] := file.GetCellRichText("Sheet1", "A1");
//合并单元格
[err, errinfo] := file.MergeCell("Sheet1", "A1", "J1");
if err then
return println("MergeCell:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [合并单元格] Ok...", testing++);
//创建样式
[err, style] := file.NewStyle('{"Border":[{"Type": "left", "Color": "FF0000", "Style": 6},
{"Type": "top", "Color": "FF0000", "Style": 6},
{"Type": "bottom", "Color": "FF0000", "Style": 6},
{"Type": "right", "Color": "FF0000", "Style": 6}],
"Fill":{"Type": "gradient", "Color": ["#FFFFFF", "#E0EBF5"], "Shading": 1},
"Alignment":{"Horizontal":"center","Vertical":"center"}
}');
if err then
return println("NewStyle:errorno={},errinfo={}", err, style);
PrintLn( "Test {} [创建样式] Ok...", testing++);
//设置样式
[err, errinfo] := file.SetCellStyle("Sheet1", "A1", "J1", style);
if err then
return println("SetCellStyle:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [设置样式] Ok...", testing++);
//设置单元格值
[err, errinfo] := file.SetCellValue("Sheet1","A3","http://www.tinysoft.com.cn");
if err then
return println("SetCellValue:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [设置单元格值] Ok...", testing++);
//设置超链接
[err, errinfo] := file.SetCellHyperLink("Sheet1", "A3", "http://www.tinysoft.com.cn", "External");
if err then
return println("SetCellHyperLink:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [设置超链接] Ok...", testing++);
//设置超链接下划线
[err, style] := file.NewStyle('{"Font":{"Color":"A020F0", "Underline": "single"}, "Alignment":{"Horizontal":"center","Vertical":"center"}}');//设置字体、格式
if err then
return println("NewStyle:errorno={},errinfo={}", err, style);
[err, errinfo] := file.SetCellStyle("Sheet1", "A3", "A3", style);
if err then
return println("SetCellStyle:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [设置超链接下划线] Ok...", testing++);
//合并单元格
[err, errinfo] := file.MergeCell("Sheet1", "A3", "J3");
if err then
return println("MergeCell:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [合并单元格] Ok...", testing++);
//插入数据表
data := array(("Name":"Small","Apple":2,"Orange":3,"Pear":3),
("Name":"Normal","Apple":5,"Orange":2,"Pear":4),
("Name":"Large","Apple":6,"Orange":7,"Pear":8));
[err, errinfo] := file.InsertTable("Sheet1","A5",data, true);
if err then
return println("InsertTable:errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [插入数据表] Ok...", testing++);
//获取数据表
[err, r] := file.GetTable("Sheet1","B6","C7");
if err then
return println("GetTable:errorno={},errinfo={}", err, r);
PrintLn( "Test {} [获取数据表] Ok...{}", testing++, r);
//插入柱状图
opts := '{
"type": "col",
"series": [
{
"name": "Sheet1!$A$6",
"categories": "Sheet1!$B$5:$D$5",
"values": "Sheet1!$B$6:$D$6"
},
{
"name": "Sheet1!$A$7",
"categories": "Sheet1!$B$5:$D$5",
"values": "Sheet1!$B$7:$D$7"
},
{
"name": "Sheet1!$A$8",
"categories": "Sheet1!$B$5:$D$5",
"values": "Sheet1!$B$8:$D$8"
}],
"format":
{
"x_scale": 1.0,
"y_scale": 1.0,
"x_offset": 15,
"y_offset": 10,
"print_obj": true,
"lock_aspect_ratio": false,
"locked": false
},
"legend":
{
"position": "left",
"show_legend_key": false
},
"title":
{
"name": "Fruit 2D Column Chart"
},
"plotarea":
{
"show_bubble_size": true,
"show_cat_name": false,
"show_leader_lines": false,
"show_percent": true,
"show_series_name": true,
"show_val": true
},
"show_blanks_as": "zero"
}';
[err, r] := file.AddChart("Sheet1","A10",opts);
if err then
return println("AddChart:errorno={},errinfo={}", err, r);
PrintLn( "Test {} [插入柱状图] Ok...{}", testing++, r);
//插入三维饼图
opts := '{
"type": "pie3D",
"series": [
{
"name": "Sheet1!$A$6",
"categories": "Sheet1!$B$5:$D$5",
"values": "Sheet1!$B$6:$D$6"
}],
"format":
{
"x_scale": 1.0,
"y_scale": 1.0,
"x_offset": 15,
"y_offset": 10,
"print_obj": true,
"lock_aspect_ratio": false,
"locked": false
},
"legend":
{
"position": "bottom",
"show_legend_key": false
},
"title":
{
"name": "Fruit 3D Pie Chart"
},
"plotarea":
{
"show_bubble_size": true,
"show_cat_name": false,
"show_leader_lines": false,
"show_percent": true,
"show_series_name": false,
"show_val": false
},
"show_blanks_as": "zero"
}';
[err, r] := file.AddChart("Sheet1","I10",opts);
if err then
return println("AddChart:errorno={},errinfo={}", err, r);
PrintLn( "Test {} [插入三维饼图] Ok...{}", testing++, r);
//插入表格
[err, r] := file.AddTable("Sheet1", "L2", "P6", '{
"table_name": "table",
"table_style": "TableStyleMedium2",
"show_first_column": true,
"show_last_column": true,
"show_row_stripes": false,
"show_column_stripes": true
}');
if err then
return println("AddTable:errorno={},errinfo={}", err, r);
PrintLn( "Test {} [插入表格] Ok...{}", testing++, r);
//save文件
[err, errinfo] := file.SaveAs("", "test.xlsx");
if err then
return println("SaveAs: errorno={},errinfo={}", err, errinfo);
PrintLn( "Test {} [SaveAs] Ok...", testing++);
PrintLn( "Test All Ok!" );