# 文档处理 / Excel控制函数

## `excelCopyChartSheet(file_name, sheet_name, newn_name, to_end)`

复制ChartSheet，如果ToEnd为真则，则拷贝到最末尾。

| 参数         | 类型   | 说明                      |
| ------------ | ------ | ------------------------- |
| `file_name`  | string | 字符串类型。Excel文件名称 |
| `sheet_name` | bool   | 字符串类型。Sheet的名称   |
| `newn_name`  | string | 新Sheet的名称             |
| `to_end`     | string | object                    |

返回：bool

## `excelCopySheet(file_name, sheet_name, new_name, to_end)`

复制一份Sheet，如果ToEnd为真则，则拷贝到最末尾。注意，复制Sheet后，必须保存，才复制成功。最后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数         | 类型   | 说明                      |
| ------------ | ------ | ------------------------- |
| `file_name`  | string | 字符串类型。Excel文件名称 |
| `sheet_name` | bool   | 字符串类型。Sheet名称     |
| `new_name`   | string | 字符串类型。新sheet名称   |
| `to_end`     | string | object                    |

返回：bool

## `excelDeleteChartSheet(file_name, sheet_name)`

删除Excel中的ChartSheet

| 参数         | 类型   | 说明                      |
| ------------ | ------ | ------------------------- |
| `file_name`  | string | 字符串类型。Excel文件名称 |
| `sheet_name` | string | 字符串类型。Sheet的名称   |

返回：bool

## `excelDeleteSheet(file_name, sheet_name)`

删除Excel中的Sheet。注意，删除后，必须保存，才删除成功。删除成功后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数         | 类型   | 说明                               |
| ------------ | ------ | ---------------------------------- |
| `file_name`  | string | 字符串类型。Excel文件名称          |
| `sheet_name` | string | 字符串类型。Excel文件中的Sheet名称 |

返回：bool

## `excelGetCell(excel_file_name, excel_sheet_name, row, col, value)`

获得指定的Excel中的指定的Sheet的行列的数据值。注意，获取数据成功后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作

| 参数               | 类型   | 说明                             |
| ------------------ | ------ | -------------------------------- |
| `excel_file_name`  | string | 字符串类型。指定的Excel文件名。  |
| `excel_sheet_name` | int    | 字符串类型。指定的Sheet名。      |
| `row`              | string | 整数。指定的行。注:第一行为1。   |
| `col`              | int    | 整数。指定的列。注:第一列为1。   |
| `value`            | any    | 任意类型。用于返回指定行列的值。 |

返回：bool

## `excelGetCells(excel_file_name, excel_sheet_name, row, col, row2, col2, value)`

获得指定的Excel中的指定的Sheet的区域的数据值。注意，获取数值成功后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数               | 类型   | 说明                                                     |
| ------------------ | ------ | -------------------------------------------------------- |
| `excel_file_name`  | string | 字符串类型。指定的Excel文件名。                          |
| `excel_sheet_name` | int    | 字符串类型。指定的Sheet名。                              |
| `row`              | int    | 整数。指定的行。注:第一行为1。                           |
| `col`              | string | 整数。指定的列。注:第一列为1。                           |
| `row2`             | int    | 整数。指定的行。注:第一行为1。                           |
| `col2`             | int    | 整数。指定的列。注:第一列为1。                           |
| `value`            | any    | 任意类型。用于返回指定区域的值，如果有值为一个二维数组。 |

返回：bool

## `excelGetChartSheetCount(excel_file_name, cnt)`

得到指定的Excel中ChartSheet的个数。

| 参数              | 类型   | 说明                            |
| ----------------- | ------ | ------------------------------- |
| `excel_file_name` | string | 字符串类型。指定的Excel文件名。 |
| `cnt`             | int    | 整数。返回ChartSheet的个数。    |

返回：bool

## `excelGetChartSheetNameByIndex(excel_file_name, index, name)`

得到指定的Excel中指定索引的ChartSheet名称。

| 参数              | 类型   | 说明                                                  |
| ----------------- | ------ | ----------------------------------------------------- |
| `excel_file_name` | string | 字符串类型。指定的Excel文件名。                       |
| `index`           | int    | 整数类型。需要获得的ChartSheet的索引号。索引从1开始。 |
| `name`            | string | 字符串类型。返回ChartSheet的名称。                    |

返回：bool

## `excelGetDataRange(excel_file_name, excel_sheet_name, start_row, start_col, end_row, end_col)`

获得指定的Excel中的指定的Sheet包含有数据的区域。

| 参数               | 类型   | 说明                                 |
| ------------------ | ------ | ------------------------------------ |
| `excel_file_name`  | string | 字符串类型。指定的Excel文件名。      |
| `excel_sheet_name` | int    | 字符串类型。指定的Sheet名。          |
| `start_row`        | string | 整数。有数据的开始行。注:第一行为1。 |
| `start_col`        | int    | 整数。有数据的开始列。注:第一列为1。 |
| `end_row`          | int    | 整数。有数据的结束行。注:第一行为1。 |
| `end_col`          | int    | 整数。有数据的结束列。注:第一列为1。 |

返回：bool

## `excelGetRangeProp(file_name, sheet, sr, sc, er, ec, name, value)`

获取指定区域的属性。SR,SC,ER,EC指定区域。

| 参数        | 类型   | 说明                                                                                                                    |
| ----------- | ------ | ----------------------------------------------------------------------------------------------------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称                                                                                               |
| `sheet`     | int    | 字符串类型。Sheet的名称                                                                                                 |
| `sr`        | string | 整数类型。Sheet起始行号                                                                                                 |
| `sc`        | array  | 整数类型。Sheet起始列好。                                                                                               |
| `er`        | string | 整数类型。Sheet结束行号                                                                                                 |
| `ec`        | int    | 整数类型。Sheet结束列号                                                                                                 |
| `name`      | int    | String 设置的属性名，非空时Value为属性的设置值，为空串时Value为一个字符串下标的数组，下标为属性名，键值为属性的设置值。 |
| `value`     | int    | Array 属性的返回值                                                                                                      |

返回：bool

## `excelGetSheetCount(excel_file_name, cnt)`

得到指定的Excel中Sheet的个数。注意，获取数据后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数              | 类型   | 说明                            |
| ----------------- | ------ | ------------------------------- |
| `excel_file_name` | string | 字符串类型。指定的Excel文件名。 |
| `cnt`             | int    | 整数。返回Sheet的个数。         |

返回：bool

## `excelGetSheetNameByIndex(excel_file_name, index, name)`

得到指定的Excel中指定索引的Sheet名称。注意，获取sheet名称后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数              | 类型   | 说明                                             |
| ----------------- | ------ | ------------------------------------------------ |
| `excel_file_name` | string | 字符串类型。指定的Excel文件名。                  |
| `index`           | int    | 整数类型。需要获得的Sheet的索引号。索引从1开始。 |
| `name`            | string | 字符串类型。返回Sheet的名称。                    |

返回：bool

## `excelMerge(file_name, sheet, sr, sc, er, ec)`

合并指定区域的属性。SR,SC,ER,EC指定区域。 FileName：字符串类型。Excel文件名称 Sheet：字符串类型。Sheet的名称 SR：整数类型。Sheet起始行号 SC：整数类型。Sheet起始列好。 ER：整数类型。Sheet结束行号 EC：整数类型。Sheet结束列号

| 参数        | 类型   | 说明 |
| ----------- | ------ | ---- |
| `file_name` | string |      |
| `sheet`     | int    |      |
| `sr`        | any    |      |
| `sc`        | any    |      |
| `er`        | any    |      |
| `ec`        | any    |      |

返回：bool

## `excelNewChartSheet(file_name, sheet_name, to_end)`

新建一个ChartSheet。

| 参数         | 类型   | 说明                      |
| ------------ | ------ | ------------------------- |
| `file_name`  | string | 字符串类型。Excel文件名称 |
| `sheet_name` | bool   | 字符串类型。Sheet的名称   |
| `to_end`     | string | object                    |

返回：bool

## `excelNewSheet(file_name, sheet_name, to_end)`

新建一个Sheet。如果ToEnd为真则，则新建到最末尾。注意，新建Sheet后，必须保存，才新建成功。最后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数         | 类型   | 说明                               |
| ------------ | ------ | ---------------------------------- |
| `file_name`  | string | 字符串类型。Excel文件名称          |
| `sheet_name` | bool   | 字符串类型。Excel文件中的sheet名称 |
| `to_end`     | string | object                             |

返回：bool

## `excelOpen(file_name)`

打开Excel文件。注意，文件被打开后，将不能再手动进行打开修改数据，相当于进程加锁。

| 参数        | 类型   | 说明                      |
| ----------- | ------ | ------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称 |

返回：bool

## `excelRangeSetProp(file_name, sheet, sr, sc, er, ec, value)`

设置指定区域的属性。

| 参数        | 类型   | 说明                                                                                            |
| ----------- | ------ | ----------------------------------------------------------------------------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称                                                                       |
| `sheet`     | int    | 字符串类型。Sheet的名称                                                                         |
| `sr`        | array  | 整数类型。Sheet起始行号                                                                         |
| `sc`        | string | 整数类型。Sheet起始列好。                                                                       |
| `er`        | int    | 整数类型。Sheet结束行号                                                                         |
| `ec`        | int    | 整数类型。Sheet结束列号                                                                         |
| `value`     | int    | 一个字符串下标的数组，其中可包括以下值，此函数仅为兼容性保留，用户应该；使用ExcelSetRangeProp。 |

返回：bool

## `excelRenameChartSheet(file_name, sheet, new_name)`

更名一个ChartSheet。

| 参数        | 类型   | 说明                      |
| ----------- | ------ | ------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称 |
| `sheet`     | string | 字符串类型。Sheet的名称   |
| `new_name`  | string | 字符串类型。Sheet的新名称 |

返回：bool

## `excelRenameSheet(file_name, sheet, new_name)`

更名一个Sheet。注意，对Sheet更名后，必须保存，才更名成功。最后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数        | 类型   | 说明                          |
| ----------- | ------ | ----------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称     |
| `sheet`     | string | 字符串类型。更改前的sheet名称 |
| `new_name`  | string | 字符串类型。更改后的sheet名称 |

返回：bool

## `excelSave(file_name)`

保存修改后的Excel文件。

| 参数        | 类型   | 说明                      |
| ----------- | ------ | ------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称 |

返回：bool

## `excelSaveAs(file_name, new_name)`

将原Excel文件另存为。注意，另存文件后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数        | 类型   | 说明                                |
| ----------- | ------ | ----------------------------------- |
| `file_name` | string | 字符串类型。原Excel文件名称         |
| `new_name`  | string | 字符串类型。另存后新的Excel文件名称 |

返回：bool

## `ExcelSaveAs2(file_name, new_name, file_format)`

按照类型另存为，类型参照Excel的文档。注意，另存文件后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数          | 类型    | 说明                                                 |
| ------------- | ------- | ---------------------------------------------------- |
| `file_name`   | String  | 字符串类型。原Excel文件名称                          |
| `new_name`    | String  | 字符串类型。另存后新的Excel文件名称                  |
| `file_format` | Integer | 整数类型。文件类型所对应的编号，参考导入导出类型函数 |

返回：Boolean，如果成功则返回真，如果指定的原文件（FileName）不存在或者失败则返回假

## `ExcelSaveAs_2(file_name, new_name, file_format)`

按照类型另存为，类型参照Excel的文档。注意，另存文件后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数          | 类型   | 说明                                                 |
| ------------- | ------ | ---------------------------------------------------- |
| `file_name`   | string | 字符串类型。原Excel文件名称                          |
| `new_name`    | int    | 字符串类型。另存后新的Excel文件名称                  |
| `file_format` | string | 整数类型。文件类型所对应的编号，参考导入导出类型函数 |

返回：bool

## `excelSetActiveChart(file_name, sheet)`

设置Excel文件的当前Chart。

| 参数        | 类型   | 说明                      |
| ----------- | ------ | ------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称 |
| `sheet`     | string | 字符串类型。Sheet的名称   |

返回：bool

## `excelSetActiveSheet(file_name, sheet)`

设置Excel文件的当前Sheet。注意，设置当前Sheet后，必须保存，才设置成功。最后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数        | 类型   | 说明                      |
| ----------- | ------ | ------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称 |
| `sheet`     | string | 字符串类型。Sheet名称     |

返回：bool

## `excelSetCell(excel_file_name, excel_sheet_name, row, col, value)`

设置指定的Excel中的指定的Sheet的行列的数据值。注意，设置数值后，必须保存，才设置成功。最后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数               | 类型   | 说明                            |
| ------------------ | ------ | ------------------------------- |
| `excel_file_name`  | string | 字符串类型。指定的Excel文件名。 |
| `excel_sheet_name` | int    | 字符串类型。指定的Sheet名。     |
| `row`              | any    | 整数。指定的行。注:第一行为1。  |
| `col`              | string | 整数。指定的列。注:第一列为1。  |
| `value`            | int    | 任意类型。设置的指定行列的值。  |

返回：bool

## `excelSetCells(excel_file_name, excel_sheet_name, row, col, row2, col2, value)`

设置指定的Excel中的指定的Sheet的区域的数据值。注意，设置数值后，必须保存，才设置成功。最后需要将Excel进程退出，否则Excel处于加锁的状态，不能再进行修改等操作。

| 参数               | 类型   | 说明                            |
| ------------------ | ------ | ------------------------------- |
| `excel_file_name`  | string | 字符串类型。指定的Excel文件名。 |
| `excel_sheet_name` | int    | 字符串类型。指定的Sheet名。     |
| `row`              | int    | 整数。指定的行。注:第一行为1。  |
| `col`              | array  | 整数。指定的列。注:第一列为1。  |
| `row2`             | string | 整数。指定的行。注:第一行为1。  |
| `col2`             | int    | 整数。指定的列。注:第一列为1。  |
| `value`            | int    | 二维数组。设置的指定区域的值。  |

返回：bool

## `excelSetChartSheetDataSource(file_name, chart_sheet, sheet, start_r, start_c, end_r, end_c, plot_by)`

指定Excel的Chart的数据来源。数据来源由Sheet,StartR,StartC,EndR,EndC指定。当PlotBy为1表示数据由行分割，为2表示数据由列分割，不指定该参数则根据Chart原来的设置来判断。

| 参数          | 类型   | 说明                                                                                                            |
| ------------- | ------ | --------------------------------------------------------------------------------------------------------------- |
| `file_name`   | string | 文件名，字符串型，excel文件的绝对路径                                                                           |
| `chart_sheet` | int    | 图表sheet名，字符串型                                                                                           |
| `sheet`       | int    | 数据源的Sheet名，字符串型                                                                                       |
| `start_r`     | string | 数据源开始行，整型                                                                                              |
| `start_c`     | string | 数据源开始列，整型                                                                                              |
| `end_r`       | int    | 数据源结束行，整型                                                                                              |
| `end_c`       | int    | 数据源结束列，整型                                                                                              |
| `plot_by`     | int    | 数据分割类型，可选，当PlotBy为1表示数据由行分割，为2表示数据由列分割，不指定该参数则根据Chart原来的设置来判断。 |

返回：bool

## `excelSetRangeProp(file_name, sheet, sr, sc, er, ec, name, value)`

设置指定区域的属性。SR,SC,ER,EC指定区域。

| 参数        | 类型   | 说明                                                                                                                    |
| ----------- | ------ | ----------------------------------------------------------------------------------------------------------------------- |
| `file_name` | string | 字符串类型。Excel文件名称                                                                                               |
| `sheet`     | int    | 字符串类型。Sheet的名称                                                                                                 |
| `sr`        | string | 整数类型。Sheet起始行号                                                                                                 |
| `sc`        | array  | 整数类型。Sheet起始列好。                                                                                               |
| `er`        | string | 整数类型。Sheet结束行号                                                                                                 |
| `ec`        | int    | 整数类型。Sheet结束列号                                                                                                 |
| `name`      | int    | String 设置的属性名，非空时Value为属性的设置值，为空串时Value为一个字符串下标的数组，下标为属性名，键值为属性的设置值。 |
| `value`     | int    | Array 属性的返回值                                                                                                      |

返回：bool

## `excelUnMerge(file_name, sheet, sr, sc, er, ec)`

取消指定区域的合并。SR,SC,ER,EC指定区域。 FileName：字符串类型。Excel文件名称 Sheet：字符串类型。Sheet的名称 SR：整数类型。Sheet起始行号 SC：整数类型。Sheet起始列好。 ER：整数类型。Sheet结束行号 EC：整数类型。Sheet结束列号

| 参数        | 类型   | 说明 |
| ----------- | ------ | ---- |
| `file_name` | string |      |
| `sheet`     | int    |      |
| `sr`        | any    |      |
| `sc`        | any    |      |
| `er`        | any    |      |
| `ec`        | any    |      |

返回：bool
