[]
        
(Showing Draft Content)

GC.Spread.Sheets.Workbook

类: Workbook

Spread.Sheets.Workbook

Table of contents

构造方法

属性

方法

构造方法

constructor

new Workbook(host?, options?)

带有指定宿主DOM容器或者DOM ID的表单及其可选设置

代码示例

// 初始表单(WorkSheet)为 3 个,并且不显示可以添加新表单的标签
var workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), {sheetCount:3, newTabVisible:false});
// 表单的标签不可编辑
var workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), { sheetCount: 3, tabEditable: false });
// 不显示标签栏
var workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), {sheetCount:3, tabStripVisible:false});
// 不允许用户调整大小
var workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), {sheetCount:3, allowUserResize:false});
// 不允许用户进行缩放
var workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"), { sheetCount: 3, allowUserZoom: false});

参数

属性名 类型 说明
host? string | HTMLElement SpreadJS 所在的 DOM 容器或者 ID
options? IWorkBookDefaultOptions -

属性

contextMenu

contextMenu: ContextMenu

上下文菜单

代码示例

//本示例展示了如何获取上下文菜单
var menuData = spread.contextMenu.menuData;

name

name: string

Spread的名称

代码示例

spread.name = "Spread1";

options

options: IWorkbookOptions

控制选项

属性 allowUserDragMerge -是否允许用户拖动合并单元格

属性 allowUserDragDrop - 是否允许用户拖放区域数据

属性 allowUserDragFill - 是否允许用户拖动填充区域

属性 allowUserZoom -是否在按Ctrl键的同时滚动鼠标滚轮来缩放显示

属性 allowUserResize - 是否允许用户调整列和行的大小

属性 allowUndo -是否允许用户撤消编辑

属性 allowSheetReorder - 用户是否可以在 SpreadJS 组件中重新排序表单

属性 allowContextMenu - 是否允许用户打开内置上下文菜单

属性 allowUserDeselect - 是否允许用户在选择中使用取消选择

属性 defaultDragFillType - 默认填充类型

属性 showDragFillSmartTag - 是否显示拖拽填充对话框

属性 showHorizontalScrollbar - 是否显示水平滚动条

属性 showVerticalScrollbar - 是否显示垂直滚动条

属性 scrollbarShowMax - 显示的滚动条是否基于表单中的完整列数和行数

属性 scrollbarMaxAlign - 滚动条是否与活动表单的最后一行和一列对齐

属性 tabStripVisible - 是否显示表单选项卡条

属性 tabStripRatio - 标签条的宽度占整个水平滚动条宽度的百分比

属性 tabStripWidth - 标签条处于左边或右边位置时的宽度默认值和最小值是80

属性 tabEditable - 是否允许用户编辑工作表标签条

属性 tabStripPosition - 标签条的位置,默认是bottom

属性 newTabVisible - 表单是否显示允许用户插入新表单(WorkSheet)的选项标签

属性 allSheetsListVisible - 工作簿是否显示特殊选项卡,允许用户打开对话框以显示所有表单

属性 tabNavigationVisible - 是否显示表单选项卡导航

属性 cutCopyIndicatorVisible - 是否在复制或剪切所选项时显示指示符

属性 cutCopyIndicatorBorderColor - 用户剪切或复制所选内容时显示的指示器的边框颜色

属性 backColor - 用于表示 SpreadJS 的背景颜色的颜色字符串,例如 "red", "#FFFF00", "rgb(255,0,0)", "Accent 5"等

属性 backgroundImage - SpreadJS 的背景图像

属性 backgroundImageLayout - SpreadJS 的背景图像布局

属性 grayAreaBackColor - 用于表示灰色区域的背景色的颜色字符串,例如 "red", "#FFFF00", "rgb(255,0,0)", "Accent 5"等

属性 showResizeTip - 如何显示调整大小提示

属性 showDragDropTip - 是否显示拖放提示

属性 showDragFillTip - 是否显示拖动填充提示

属性 showScrollTip - 如何显示滚动提示

属性 scrollIgnoreHidden - 滚动条是否忽略隐藏的行或列

属性 highlightInvalidData - 是否突出显示无效数据

属性 useTouchLayout - 是否使用触摸布局来显示 SpreadJS

属性 hideSelection - 是否在 SpreadJS 没有焦点时突出显示选择

属性 resizeZeroIndicator - 将行或列的大小调整为零时的绘制策略

属性 allowUserEditFormula - 用户是否可以在表单的单元格中编辑公式

属性 enableFormulaTextbox - 是否在表单中启用公式文本框

属性 autoFitType - 内容是否格式化以适合单元格或单元格和标题

属性 referenceStyle - 此表单中单元格公式中的单元格和区域引用的样式

属性 allowDynamicArray - 是否启用动态数组

属性 iterativeCalculation - 是否启用迭代计算

属性 iterativeCalculationMaximumIterations - 迭代计算时最大迭代次数

属性 iterativeCalculationMaximumChange - 迭代计算时变化最大量

属性 calcOnDemand - 是否只在需要时才计算公式

属性 dynamicReferences - 动态引用时计算公式

属性 allowCopyPasteExcelStyle - 用户是否可以从表单复制样式然后粘贴到Excel,或者从Excel复制样式然后粘贴到表单

属性 allowExtendPasteRange - 如果粘贴区域不足以粘贴,是否扩展粘贴区域

属性 copyPasteHeaderOptions - 复制或粘贴数据时包含的表头

属性 calculationMode - 指定工作簿的重新计算模式

属性 scrollByPixel - 是否启用按像素滚动的精度

属性 scrollPixel - 当scrollByPixel为true时,决定每次滚动的像素数最终滚动像素是滚动delta乘以scrollPixel的结果例如,滚动的delta是3,scrollPixel是5,最终滚动的像素是15

属性 enableAccessibility -是否在电子表格中启用可访问性支持

属性 allowAutoCreateHyperlink - 是否在表单中启用自动创建超链接

属性 columnResizeMode - 调整列大小的方法

属性 rowResizeMode - 调整行大小的方法

属性 customList - 列表供用户自定义拖动填充,优先级匹配此列表中的每个填充每个数组项都是字符串数组的类型

属性 scrollbarAppearance - 滚动条的外观,包含外观和移动两个枚举 默认值为外观

属性 pasteSkipInvisibleRange - 是否粘贴跳过不可见的区域默认为false

属性 allowAutoExtendFilterRange -是否允许像excel一样自动扩展筛选区域,默认值为false

属性 allowInvalidFormula - 是否允许输入无效的公式字符串。缺省值为false

属性 formulaFormatHint - 是否在公式输入时自动生成格式。默认为True

属性 pivotAreaReference - 在选择数据透视表数据区域时,是否自动生成getPivotData公式或单元格引用。默认是getPivotData

属性 defaultSheetTabStyles - 工作表选项卡的所有默认状态样式

代码示例

// var workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:5,showHorizontalScrollbar:false});
var workbook = new GC.Spread.Sheets.Workbook("ss",{sheetCount:5,showHorizontalScrollbar:false});
workbook.options.allowUserDragDrop = false;
workbook.options.allowUserZoom = false;

sheetTabStyles

sheetTabStyles: SheetTabStyleManager

代表工作表选项卡的状态样式管理器


sheets

sheets: Worksheet[]

表单集合


touchToolStrip

touchToolStrip: TouchToolStrip

触摸工具条

方法

addCustomFunction

addCustomFunction(fn): void

添加自定义函数

参数

属性名 类型 说明
fn Function 需要添加的函数

返回值

void


addCustomName

addCustomName(name, formula, baseRow, baseCol, comment?, isReadOnly?): void

添加自定义名称

参数

属性名 类型 说明
name string 自定义名称
formula string 公式
baseRow number 行索引
baseCol number 列索引
comment string 自定义批注
isReadOnly? boolean -

返回值

void


addNamedStyle

addNamedStyle(style): void

将样式添加到名为样式集的工作簿中

参数

属性名 类型 说明
style Style 要添加的样式

返回值

void


addSheet

addSheet(index, sheet?): void

在特定索引处插入一个表单

代码示例

//本示例将表单添加到表单
spread.addSheet(0,new GC.Spread.Sheets.Worksheet("custom"));

参数

属性名 类型 说明
index number 添加表单的索引
sheet? Worksheet 要添加的表单

返回值

void


addSheetTab

addSheetTab(index, name, type): any

在指定索引处插入集算表

参数

属性名 类型 说明
index number 要添加集算表的索引
name string 要添加集算表的名称
type SheetType 表单标签类型

返回值

any

添加的集算表


addSparklineEx

addSparklineEx(sparklineEx): void

将 SparklineEx 添加到 SparklineEx 集合

参数

属性名 类型 说明
sparklineEx SparklineEx 要添加的SparklineEx

返回值

void


bind

bind(type, data?, fn?): void

将事件绑定到工作簿

代码示例

//本示例将事件绑定到函数
sheet.setActiveCell(5,5);
alert(sheet.getActiveColumnIndex());
alert(sheet.getActiveRowIndex());
spread.bind(GC.Spread.Sheets.Events.EnterCell, function (event, data) {
    alert(data.col);
    alert(data.row);
  });
spread.bind(GC.Spread.Sheets.Events.LeaveCell, function (event, data) {
    alert(data.col);
    alert(data.row);
  });

参数

属性名 类型 说明
type string 事件类型
data? any 要传递给函数的其他数据
fn? Function 事件触发时要执行的函数

返回值

void


calculate

calculate(type?, address?): void

重新构建、标记为脏、广播脏数据并重新计算公式 首先按照计算类型在地址中进行重新构建和标记为脏 然后,广播脏数据将递归地将脏单元格的依赖项设置为脏数据在工作簿中 在自动模式下,所有脏单元格将被计算 在手动模式下,只有地址中的单元格会被计算,其他单元格保持脏状态 如果 CalcService 被暂停,则会跳过重新计算

代码示例

spread.sheets[0].setFormula(0,0,"RAND()");
spread.sheets[0].setFormula(1,0,"=Sheet2!A1");
spread.sheets[0].setFormula(2,0,"=1+2");
spread.sheets[1].setFormula(0,0,"RAND()");
spread.sheets[1].setFormula(1,0,"=Sheet1!A1");

// 所有单元格都会重新计算
spread.calculate();
spread.calculate(GC.Spread.Sheets.CalculationType.regular);

// Sheet1!A1 和 Sheet2!A2 被计算出新的数值,并且计算了 Sheet1!A2 和 Sheet1!A3
spread.calculate(GC.Spread.Sheets.CalculationType.all, "Sheet1");

// Sheet1!A1 和 Sheet2!A2 被计算出新的数值
spread.calculate(GC.Spread.Sheets.CalculationType.regular, "Sheet1!A1");

// 没有任何单元格被计算
spread.calculate(GC.Spread.Sheets.CalculationType.regular, "Sheet1!A2");

spread.options.calculationMode = GC.Spread.Sheets.CalculationMode.manual; // 切换到手动模式

// Sheet1!A1 被计算出新的数值,Sheet1!A2 和 Sheet1!A3 被计算但未更改,Sheet2!A2 在手动模式下保持脏状态
spread.calculate(GC.Spread.Sheets.CalculationType.all, "Sheet1");

// Sheet1!A1 被计算出新的数值,Sheet2!A2 在手动模式下保持脏状态
spread.calculate(GC.Spread.Sheets.CalculationType.regular, "Sheet1");

// Sheet2!A2 被计算,因为它是脏的
spread.calculate(GC.Spread.Sheets.CalculationType.minimal);

参数

属性名 类型 说明
type? CalculationType 指定重新构建和标记脏数据的计算类型
address? string 指定要标记为脏并计算的工作表或范围。如果省略,则为整个工作簿。请注意,在自动模式下,范围之外的脏依赖项将被计算

返回值

void


changeSheetIndex

changeSheetIndex(sheetName, targetIndex): boolean

更改表单索引并重新排序表单

代码示例

//本示例演示如何更改表单索引
var spread = GC.Spread.Sheets.findControl(ss);
spread.setSheetCount(5); // The sheets sequence should be "Sheet1", "Sheet2", "Sheet3", "Sheet4", "Sheet5".
spread.changeSheetIndex("Sheet1", 3); // The sheets sequence should be "Sheet2", "Sheet3", "Sheet4", "Sheet1", "Sheet5".

参数

属性名 类型 说明
sheetName string 表单名称
targetIndex number 目标索引

返回值

boolean


changeSheetPosition

changeSheetPosition(sheetName, targetPosition): boolean

修改表单的位置及顺序

代码示例

//这个例子表示如何修改集算表的位置
var spread = GC.Spread.Sheets.findControl(ss);
spread.setSheetCount(5);
spread.addSheetTab(0, "tableSheet1", GC.Spread.Sheets.SheetType.tableSheet); // The sheets sequence should be "Sheet1", "Sheet2", "Sheet3", "Sheet4", "Sheet5", "tableSheet1".
spread.changeSheetPosition("tableSheet1", 3); // The sheets sequence should be "Sheet1", "Sheet2", "Sheet3", "tableSheet1", "Sheet4", "Sheet5".

参数

属性名 类型 说明
sheetName string 表单名称
targetPosition number 目标位置

返回值

boolean


clearCustomFunctions

clearCustomFunctions(): void

清除所有自定义功能

返回值

void


clearCustomNames

clearCustomNames(): void

清除自定义名称

返回值

void


clearSheetTabs

clearSheetTabs(): void

清除所有工作表

返回值

void


clearSheets

clearSheets(): void

清除控件中的所有表单

代码示例

//本示例使用clearSheets方法
spread.clearSheets();

返回值

void


commandManager

commandManager(): CommandManager

获取命令管理器

代码示例

//本示例执行一个执行指定动作的命令
spread.options.allowUndo = true;
spread.commandManager().execute({cmd: "outlineRow", sheetName: "Sheet1", index: 3, count: 5});

返回值

CommandManager

The command manager.


dataManager

dataManager(): DataManager

获取数据管理器

返回值

DataManager

返回数据管理器


destroy

destroy(): void

销毁工作簿及其包含的所有表单

代码示例

//本示例销毁工作簿实例
spread.destroy();

返回值

void


export

export(successCallBack?, errorCallBack?, exportOptions?): void

将对象状态导出到 Excel、SSJSON 或 CSV 文件

代码示例

spread.export(function (blob) {
   // save blob to a file
   saveAs(blob, fileName);
}, function (e) {
   console.log(e);
}, {
   fileType: GC.Spread.Sheets.FileType.excel,
   includeBindingSource: true
});

参数

属性名 类型
successCallBack? Function
errorCallBack? Function
exportOptions? ExportOptions

返回值

void


focus

focus(focusIn?): void

让工作簿获取焦点或失去焦点

代码示例

//本示例让工作簿获取焦点
$("#button1").click(function () {
spread.focus(true);
   });

参数

属性名 类型 说明
focusIn? boolean false时,工作簿失去焦点; 否则,获取焦点

返回值

void


fromJSON

fromJSON(workbookData, deserializationOptions?): Promise<any>

从指定的JSON字符串加载对象状态

代码示例

//本示例使用fromJSON方法
activeSheet.getCell(0,0).value(123);
var jsonStr = null;
//export
jsonStr = JSON.stringify(spread.toJSON());
//import
var fromJSONPromise = spread.fromJSON(JSON.parse(jsonStr));
fromJSONPromise.then(() => {
     alert(jsonStr);
});

参数

属性名 类型 说明
workbookData Object 反序列化的表单数据
deserializationOptions? Object -

返回值

Promise<any>

  • The fromJSON promise.

getActiveSheet

getActiveSheet(): Worksheet

获取当前表单

返回值

Worksheet

当前表单实例


getActiveSheetIndex

getActiveSheetIndex(): number

获取控件的当前表单索引

代码示例

//本示例使用getActiveSheetIndex方法
var index = spread.getActiveSheetIndex();
alert(index);

返回值

number

当前表单索引


getActiveSheetTab

getActiveSheetTab(): any

获取当前表单选项卡

返回值

any

活动的表单选项卡实例


getActiveSheetTabIndex

getActiveSheetTabIndex(): number

获取当前表单选项卡索引

返回值

number

当前表单选项卡索引


getCircularReference

getCircularReference(): ICellsInfo[]

获取工作簿中的所有循环引用单元格信息

代码示例

spread.getCircularReference();

返回值

ICellsInfo[]

返回循环引用单元格信息对象数组

  • cellsInfo.row 单元格区域行索引
  • cellsInfo.col 单元格区域列索引
  • cellsInfo.rowCount 单元格区域行数
  • cellsInfo.colCount 单元格范围
  • cellsInfo.sheetName 工作表名称

getCustomFunction

getCustomFunction(name): void

获取自定义函数

参数

属性名 类型 说明
name string 自定义函数名称

返回值

void

自定义函数


getCustomName

getCustomName(name): NameInfo

获取指定的自定义名称信息

参数

属性名 类型 说明
name string 自定义名称

返回值

NameInfo

自定义名称的信息


getCustomNames

getCustomNames(): NameInfo[]

获取所有自定义名称信息

返回值

NameInfo[]

类型GC.Spread.Sheets.NameInfo存储在数组中


getExternalReferences

getExternalReferences(includeItemDetail?): IExternalReference[]

获取当前工作簿的跨工作簿引用列表

代码示例

//本示例获取并更新使用的数据源
spread.getActiveSheet().setFormula(0, 0, "='[Jackson.xlsx]Sheet1'!B6+SUM('[Petrosky.xlsx]Sheet2'!B7:B8)");
spread.getExternalReferences().forEach(item=>{
     spread.updateExternalReference(item.name, spreadList[item.name], item.filePath);
})

参数

属性名 类型 说明
includeItemDetail? boolean 是否包括目标单元格和源范围。默认值为false

返回值

IExternalReference[]

  • externalReference数组
  • externalReference.name 跨工作簿引用的文件名
  • externalReference.filePath 跨工作簿引用的文件路径

getHost

getHost(): HTMLElement

获取当前工作簿实例的宿主元素

返回值

HTMLElement

host 当前工作簿实例的宿主元素


getNamedStyle

getNamedStyle(name): Style

从名为styles的工作簿中获取具有指定名称的样式

参数

属性名 类型 说明
name string 要返回的样式的名称

返回值

Style

返回指定的命名样式


getNamedStyles

getNamedStyles(): Style[]

从工作簿中获取命名样式

返回值

Style[]

命名样式的GC.Spread.Sheets.Style数组


getSheet

getSheet(index): Worksheet

获取指定的表单

代码示例

//本示例获取表单并设置单元格前面板
var sheet1 = spread.getSheet(1);
sheet1.getCell(0,0).value("A1").foreColor("red");

参数

属性名 类型 说明
index number 要返回的表单的索引

返回值

Worksheet

指定的表


getSheetCount

getSheetCount(): number

获取表单的数量

代码示例

//本例使用了getSheetCount方法
var index = spread.getSheetCount();
alert(index);

返回值

number

表单的数量


getSheetFromName

getSheetFromName(name): Worksheet

获取具有指定名称的表单

代码示例

//本示例获取表单并设置单元格前面板
var sheet1 = spread.getSheetFromName("Sheet2");
sheet1.getCell(0,0).value("A1").foreColor("red");

参数

属性名 类型 说明
name string 表单名称

返回值

Worksheet

具有指定名称的表单


getSheetIndex

getSheetIndex(name): number

获取指定名称的表单索引

代码示例

//本示例使用getSheetIndex方法
spread.setSheetCount(5);
var index = spread.getSheetIndex("Sheet2");
alert(index); // 1

参数

属性名 类型 说明
name string 表单名称

返回值

number

基于工作表集合的表单索引


getSheetPosition

getSheetPosition(name): number

根据名字获取表单选项卡的位置

代码示例

spread.setSheetCount(5);
spread.addSheetTab(0, "tableSheet1", GC.Spread.Sheets.SheetType.tableSheet);
var position = spread.getSheetPosition("tableSheet1");
alert(position); // 5

参数

属性名 类型 说明
name string 表单选项卡的名字

返回值

number

表单选项卡位置,基于工作表和集算表的集合


getSheetTab

getSheetTab(indexOrName): any

按索引或名称获取指定的工作表选项卡

参数

属性名 类型 说明
indexOrName string | number 要返回的工作表选项卡的索引或名称

返回值

any

指定的表单选项卡


getSheetTabCount

getSheetTabCount(): number

获取工作表选项卡的数目

返回值

number

工作表选项卡的数目


getSheetTabIndex

getSheetTabIndex(name): number

获取具有指定名称的集算表选项卡索引

代码示例

spread.setSheetCount(5);
spread.addSheetTab(0, "tableSheet1", GC.Spread.Sheets.SheetType.tableSheet);
var index = spread.getSheetTabIndex("tableSheet1");
alert(index); // 0

参数

属性名 类型 说明
name string 集算表选项卡名称

返回值

number

表单选项卡位置,基于工作表和集算表的集合


hitTest

hitTest(x, y): IWorkbookHitTestInformation

执行命中测试

代码示例

//本示例使用hitTest方法
      window.onload = function(){
          var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"),{sheetCount:3});
          var activeSheet = spread.getActiveSheet();
          $("#ss").click(function (e) {
              //从鼠标单击的常规单元格中获取单元格索引,这些常规单元格既不是固定的行/列也不是行/列标题
              var offset = $("#ss").offset();
              var x = e.pageX - offset.left;
              var y = e.pageY - offset.top;
              var target = spread.hitTest(x, y);
              if(target.worksheetHitInfo) {
                  if(target.worksheetHitInfo.hitTestType === 0) {
                      str = 'corner';
                  } else if (target.worksheetHitInfo.hitTestType === 1) {
                      str = 'colHeader';
                  } else if (target.worksheetHitInfo.hitTestType === 2) {
                      str = 'rowHeader';
                  } else {
                      str = 'viewport';
                  }
              } else if(target.tabStripHitInfo) {
                  if(target.tabStripHitInfo.navButton){
                      str = target.tabStripHitInfo.navButton;
                  } else if(target.tabStripHitInfo.sheetTab) {
                      str = target.tabStripHitInfo.sheetTab.sheetName;
                  } else if(target.tabStripHitInfo.resize === true) {
                      str = "resize";
                  } else {
                      str = "blank";
                  }
              } else if(target.horizontalScrollBarHitInfo) {
                  str = target.horizontalScrollBarHitInfo.element;
              } else if(target.verticalScrollBarHitInfo) {
                  str = target.verticalScrollBarHitInfo.element;
              } else if(target.footerCornerHitInfo) {
                  str = target.footerCornerHitInfo.element;
              }
        alert(str);
});
}

参数

属性名 类型 说明
x number 相对于 SpreadJS 水平轴的 x 坐标x
y number 相对于 SpreadJS 垂直轴的 y 坐标y

返回值

IWorkbookHitTestInformation

  • 命中测试信息 如果选择表单,则返回表单信息 该信息包含x,y和worksheetHitInfo;
  • 如果选择sheetsTabStrip,则返回sheetsTabStrip信息 此信息包含x,y和tabStripHitInfo;
  • 如果选择horizontalScrollbar,则返回horizontalScrollbar信息 该信息包含x,y和horizontalScrollBarHitInfo;
  • 如果选择verticalScrollbar,则返回verticalScrollbar信息 此信息包含x,y和verticalScrollBarHitInfo;
  • 如果选择footerCorner,则返回footerCorner信息 此信息包含x,y和footerCornerHitInfo

import

import(file, successCallback?, errorCallback?, importOptions?): void

从 Excel、SSJOSN、csv文件、JavaScript 文件导入对象状态

代码示例

//This example uses the import method.
//Get file blob.
var file = document.getElementById("importFileName").files[0];
// import
spread.import(file, function () {
   // success callback to do something
}, function (e) {
   console.log(e); // error callback
}, {
   fileType: GC.Spread.Sheets.FileType.excel
});

参数

属性名 类型 说明
file File Excel、SSJOSN、csv文件、JavaScript 文件
successCallback? Function -
errorCallback? Function -
importOptions? ImportOptions -

返回值

void


invalidateLayout

invalidateLayout(): void

更新控件布局信息

代码示例

//本示例更新布局
spread.invalidateLayout();
spread.repaint();

返回值

void


isPaintSuspended

isPaintSuspended(): boolean

获取 SpreadJS 是否已暂停绘制

返回值

boolean


nextControl

nextControl(value?): any

通过 GC.Spread.Sheets.Actions.selectNextControl 和 GC.Spread.Sheets.Actions.moveToNextCellThenControl 获取或设置使用的下一个控件

参数

属性名 类型 说明
value? HTMLElement 下一个控件,控件必须具有获取焦点方法

返回值

any

如果未设置任何值,则返回下一个控件;否则,返回表单


open

open(file, successCallback?, errorCallback?, openOptions?): void

加载 SJS 文件到 SpreadJS 实例

代码示例

//This example uses the open method.
//Get file blob.
var file = document.getElementById("importFileName").files[0];
// import
spread.open(file, function () {
   // success callback to 做一些事请
}, function (e) {
 console.log(e); // error callback
}, { openMode: GC.Spread.Sheets.OpenMode.lazy });

参数

属性名 类型 说明
file File SJS 文件流
successCallback? Function -
errorCallback? Function -
openOptions? OpenOptions -

返回值

void


pageInfo

pageInfo(sheetIndex?): any

获取表单的页面信息

代码示例

var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
spread.suspendPaint();
var sheet = spread.getActiveSheet();
for(var i=0;i<20;i++){
   for(var j=0;j<20;j++){
       sheet.setValue(i,j,"Row"+i+"_Column"+j);
   }
}
var pageInfos =  spread.pageInfo(0);
console.table(pageInfos.pages);

参数

属性名 类型 说明
sheetIndex? number 表单索引

返回值

any

返回表单的页面信息,如果忽略表单索引,则返回数组中所有表单的页面信息


previousControl

previousControl(value?): any

通过GC.Spread.Sheets.Actions.selectPreviousControl和GC.Spread.Sheets.Actions.moveToPreviousCellThenControl获取或设置使用的先前控件

参数

属性名 类型 说明
value? HTMLElement 先前的控件控件必须具有焦点方法

返回值

any

如果未设置任何值,则返回先前的控件;否则,返回表单


print

print(sheetIndex?): void

打印指定的表单

参数

属性名 类型 说明
sheetIndex? number 表单索引,如果忽略表单索引,则打印所有可见的表单

返回值

void


refresh

refresh(): void

手动刷新工作簿对象的布局和呈现

代码示例

//本示例使用refresh方法
spread.refresh();

返回值

void


removeCustomFunction

removeCustomFunction(name): void

删除自定义函数

参数

属性名 类型 说明
name string 自定义函数名称

返回值

void


removeCustomName

removeCustomName(name): void

删除指定的自定义名称

代码示例

//本示例使用removeCustomName方法
activeSheet.setValue(0, 0, 1);
activeSheet.setValue(0, 1, 2);
activeSheet.setValue(0, 2, 3);
spread.addCustomName("customName1","=12", 0, 0);
activeSheet.setFormula(1, 0, "customName1");
//spread.removeCustomName("customName1");

参数

属性名 类型 说明
name string 自定义名称

返回值

void


removeNamedStyle

removeNamedStyle(name): void

从名为styles的工作簿中删除具有指定名称的样式

代码示例

var namedStyle = new GC.Spread.Sheets.Style();
namedStyle.name = "style1";
namedStyle.backColor = "green";
spread.addNamedStyle(namedStyle);
activeSheet.setStyleName(1, 1, "style1"); // 单元格(1,1)的背景色为绿色
activeSheet.setStyleName(2, 1, "style1");
var style = spread.getNamedStyle("style1");
style.foreColor = "red";    // namedStyle的前景色为红色
activeSheet.repaint(); // 单元格(1,1)和单元格(2,1)的前颜色为红色
activeSheet.getCell(1,1).value("test");
$("#button1").click(function () {
     spread.removeNamedStyle("style1");
});

参数

属性名 类型 说明
name string 要删除的样式的名称

返回值

void


removeSheet

removeSheet(index): void

删除指定的表单

代码示例

//本示例从表单中删除表
spread.setSheetCount(5);
spread.removeSheet(0);

参数

属性名 类型 说明
index number 要删除的表单的索引

返回值

void


removeSheetTab

removeSheetTab(indexOrName): void

按索引或名称删除指定的工作表选项卡

参数

属性名 类型 说明
indexOrName string | number 要删除的工作表选项卡的索引或名称

返回值

void


removeSparklineEx

removeSparklineEx(name): void

从SparklineEx集合中移除SparklineEx

参数

属性名 类型 说明
name string 要删除的SparklineEx的名称

返回值

void


repaint

repaint(): void

重新绘制工作簿控件

代码示例

//本示例更新布局
spread.invalidateLayout();
spread.repaint();

返回值

void


resumeCalcService

resumeCalcService(recalcAll?): void

恢复计算服务

代码示例

//本示例使用resumeCalcService方法
spread.suspendCalcService(false);
activeSheet.setValue(0,0,1);
activeSheet.setValue(0,1,2);
activeSheet.setValue(0,2,10);
activeSheet.getCell(1,1).formula("=SUM(A1:C1)");
spread.resumeCalcService(true);

参数

属性名 类型 说明
recalcAll? boolean 指定是否重新计算所有公式

返回值

void


resumeEvent

resumeEvent(): void

恢复事件

代码示例

//本示例暂停并恢复事件
 activeSheet.bind(GC.Spread.Sheets.Events.CellChanged, function (sender, args) {
    if (args.propertyName === "value") {
        alert(activeSheet.getValue(args.row, args.col));
    }
});
spread.suspendEvent();
activeSheet.setValue(0, 0, "111");
spread.resumeEvent();
activeSheet.setValue(1, 1, "222");

返回值

void


resumePaint

resumePaint(): void

恢复活动表单和标签条的绘制

返回值

void


save

save(successCallBack?, errorCallBack?, saveOptions?): void

将 SpreadJS 保存为 SJS 文件流

代码示例

spread.save(function (blob) {
   // save blob to a file
   saveAs(blob, fileName);
}, function (e) {
   console.log(e);
}, { includeUnusedNames: false });

参数

属性名 类型 说明
successCallBack? Function 成功时的回调函数
errorCallBack? Function 发生错误时的回调函数
saveOptions? SaveOptions 保存选项

返回值

void


savePDF

savePDF(successCallback, errorCallback, options?, sheetIndex?): void

将指定的表单导出为PDF

参数

属性名 类型 说明
successCallback Function 成功时的回调函数
errorCallback Function 发生错误时的回调函数
options? Object -
sheetIndex? number 表单索引 如果忽略表单索引,则导出所有可见表单

返回值

void


search(searchCondition): SearchResult

在指定表单的单元格中的文本中搜索具有指定条件的指定字符串

代码示例

//本示例使用指定的搜索条件搜索活动表
activeSheet.getCell(2,3).value("testSearch");
var searchCondition = new GC.Spread.Sheets.Search.SearchCondition();
searchCondition.searchString = "testSearch";
searchCondition.startSheetIndex = spread.getActiveSheetIndex();
searchCondition.endSheetIndex = spread.getActiveSheetIndex();
searchCondition.searchOrder = GC.Spread.Sheets.Search.SearchOrder.nOrder;
searchCondition.searchTarget = GC.Spread.Sheets.Search.SearchFoundFlags.cellText;
searchCondition.searchFlags = GC.Spread.Sheets.Search.SearchFlags.ignoreCase| GC.Spread.Sheets.Search.SearchFlags.useWildCards;
var searchresult= spread.search(searchCondition);
var str ="[searchFoundFlag:"+ searchresult.searchFoundFlag+",\r\n foundSheetIndex:"+searchresult.foundSheetIndex+",foundRowIndex:" +
searchresult.foundRowIndex+", foundColumnIndex:"+searchresult.foundColumnIndex+", foundString:"+searchresult.foundSheetIndex+"]";
alert(str);

参数

属性名 类型 说明
searchCondition SearchCondition 搜索条件

返回值

SearchResult

搜索结果


setActiveSheet

setActiveSheet(name): void

通过名称设置活动表单

代码示例

//本示例设置活动表单
spread.setSheetCount(3);
spread.setActiveSheet("Sheet2");

参数

属性名 类型 说明
name string 用来制作活动表单的表单名称

返回值

void


setActiveSheetIndex

setActiveSheetIndex(value): void

设置控件的活动表单索引

代码示例

//本示例使用setActiveSheetIndex方法
spread.setActiveSheetIndex(1);

参数

属性名 类型 说明
value number 活动表单索引

返回值

void


setActiveSheetTab

setActiveSheetTab(indexOrName): void

按索引或名称设置活动表单选项卡

参数

属性名 类型 说明
indexOrName string | number 用于创建活动表单选项卡的索引或名称

返回值

void


setSheetCount

setSheetCount(count): void

设置表单数

代码示例

spread.setSheetCount(5);

参数

属性名 类型 说明
count number 表单的数量

返回值

void


startSheetIndex

startSheetIndex(value?): any

获取或设置要在表单中显示的第一张表单的索引

参数

属性名 类型 说明
value? number 要在表单中显示的第一张表单的索引

返回值

any

如果未设置任何值,则返回表单中显示的第一张表单的索引;否则,返回表单


suspendCalcService

suspendCalcService(ignoreDirty?): void

挂起计算服务

代码示例

//本示例使用suspendCalcService方法
spread.suspendCalcService(false);
activeSheet.setValue(0,0,1);
activeSheet.setValue(0,1,2);
activeSheet.setValue(0,2,10);
activeSheet.getCell(1,1).formula("=SUM(A1:C1)");
spread.resumeCalcService(true);

参数

属性名 类型 说明
ignoreDirty? boolean 是否使依赖关系单元格无效

返回值

void


suspendEvent

suspendEvent(): void

挂起事件

代码示例

//本示例暂停并恢复事件
activeSheet.bind(GC.Spread.Sheets.Events.CellChanged, function (sender, args) {
    if (args.propertyName === "value") {
        alert(activeSheet.getValue(args.row, args.col));
    }
});
spread.suspendEvent();
activeSheet.setValue(0, 0, "111");
spread.resumeEvent();
activeSheet.setValue(1, 1, "222");

返回值

void


suspendPaint

suspendPaint(): void

挂起活动表单和标签条的绘制

返回值

void


toJSON

toJSON(serializationOption?): Object

将对象状态保存为JSON字符串

代码示例

activeSheet.getCell(0,0).value(123);
var jsonStr = null;
//export
jsonStr = JSON.stringify(spread.toJSON());
//import
spread.fromJSON(JSON.parse(jsonStr));
alert(jsonStr);

参数

属性名 类型 说明
serializationOption? Object 序列化选项

返回值

Object


unbind

unbind(type, fn?): void

删除事件到工作簿的绑定

代码示例

//本示例删除事件绑定
activeSheet.bind(GC.Spread.Sheets.Events.CellChanged, function (sender, args) {
    if (args.propertyName === "value") {
        alert(activeSheet.getValue(args.row, args.col));
    }
});
activeSheet.setValue(0, 0, "111");
spread.unbind(GC.Spread.Sheets.Events.CellChanged);
//spread.unbindAll(); //取消监视所有事件
activeSheet.setValue(1, 0, "222");
activeSheet.setValue(2, 0, "333");
activeSheet.setValue(3, 0, "444");

参数

属性名 类型 说明
type string 事件类型
fn? Function 事件触发时要执行的函数

返回值

void


unbindAll

unbindAll(): void

删除所有事件到工作簿的绑定

代码示例

//本示例删除事件绑定 取消批注unbindAll方法以删除所有事件绑定
activeSheet.bind(GC.Spread.Sheets.Events.CellChanged, function (sender, args) {
    if (args.propertyName === "value") {
        alert(activeSheet.getValue(args.row, args.col));
    }
});
activeSheet.setValue(0, 0, "111");
spread.unbind(GC.Spread.Sheets.Events.CellChanged);
//spread.unbindAll(); //取消监视所有事件
activeSheet.setValue(1, 0, "222");
activeSheet.setValue(2, 0, "333");
activeSheet.setValue(3, 0, "444");

返回值

void


undoManager

undoManager(): UndoManager

获取撤消管理器

返回值

UndoManager

撤消管理器


updateExternalReference

updateExternalReference(linkInfo, data?, filePath?): void

使用工作簿 JSON 数据或 GC.Spread.Sheets.IO.getPartialValues 的 successCallback 返回结果中的外部值,设置或更新外部数据源的数据

代码示例

// 本示例使用工作簿JSON设置外部源
spread.getActiveSheet().setFormula(0, 0, "[calc.xlsx]Sheet1!A1");  // spread cell A1 value is #REF!
spread2.getActiveSheet().setFormula(0, 0, "=123+1"); \xa0// spread2 cell A1 value is 124
spread.updateExternalReference("calc.xlsx", spread2.toJSON());  // spread cell A1 value is 124
// 使用JSON设置数据
spread.getActiveSheet().setFormula(0, 0, "=SUM([calc.xlsx]Sheet1!A1:B2"); \xa0// spread cell A1 value is #REF!
spread.updateExternalReference("calc.xlsx", {"Sheet1":[[1, 2],[1, 3]]}); \xa0// spread cell A1 value is 7
spread.updateExternalReference("calc.xlsx", {"Sheet1":{0:{0:10, 1:10}, 1:{0:10, 1:10}}}); \xa0// spread cell A1 value is 40
// This example sets the external values with the successCallback result of GC.Spread.Sheets.IO.getPartialValues
let refList = spread.getExternalReferences(true);
GC.Spread.Sheets.IO.getPartialValues(refList, getFile, (externalValues) => {
  // successCallback
  spread.updateExternalReference(externalValues);
}, (errorMsg) => {
  // errorCallback
  console.log(errorMsg);
});

参数

属性名 类型 说明
linkInfo string | ExternalPartialValues 字符串是外部源的文件名,大多以".xlsx"结尾。另一种类型应该是从GC.Spread.Sheets.IO.getPartialValues的回调中获得的外部部分值数组
data? object -
filePath? string -

返回值

void