Spread.Sheets 有拖拽填充选项,允许用户选择单元格并使用相同内容或不同内容进行填充。
填充类型可以设置为线性,增长或者自动填充。
填充方向也可以设置。
拖拽填充也提供其他选项,比如步进和停止值等。
操作步骤:
选择一个单元格或者区域,并将鼠标移动到右下角,鼠标指针样式将会变成一个加号。
此时拖拽并松开鼠标,即可进行拖拽填充操作。
点击下方的加号标志,你可以选择填充选项,如图所示:
拖拽填充在有合并单元格区域时不适用。
拖拽填充对条件格式和筛选区域不适用。
options.allowUserDragFill 属性用来设置是否允许拖拽填充, fillAuto 方法用于使用代码进行填充操作。
示例代码
以下了例子填充了一个单元格区域。
spread.options.allowUserDragFill = true; activeSheet.setValue(0, 0, new Date(2011, 1, 1)); activeSheet.setValue(0, 1, new Date(2011, 2, 9)); activeSheet.setValue(0, 2, 5); activeSheet.setValue(0, 3, 10); activeSheet.setValue(0, 4, 1); var start = new GC.Spread.Sheets.Range(0, 0, 1, 1); var r = new GC.Spread.Sheets.Range(0, 0, 4, 1); activeSheet.fillAuto(start, r, { fillType: GC.Spread.Sheets.Fill.FillType.date, series: GC.Spread.Sheets.Fill.FillSeries.column, fillDirection: GC.Spread.Sheets.Fill.FillDirection.down, unit: GC.Spread.Sheets.Fill.FillDateUnit.day, step: 1, stop: new Date(2011, 2, 11) }); start = new GC.Spread.Sheets.Range(0, 1, 1, 1); var r2 = new GC.Spread.Sheets.Range(0, 1, 4, 1); activeSheet.fillAuto(start, r2, { fillType: GC.Spread.Sheets.Fill.FillType.date, series: GC.Spread.Sheets.Fill.FillSeries.column, fillDirection:GC.Spread.Sheets.Fill.FillDirection.down, unit: GC.Spread.Sheets.Fill.FillDateUnit.day, step: 1, stop: new Date(2011, 2, 11) }); start = new GC.Spread.Sheets.Range(0, 2, 1, 1); var r3 = new GC.Spread.Sheets.Range(0, 2, 4, 1); activeSheet.fillAuto(start, r3, { fillType: GC.Spread.Sheets.Fill.FillType.auto, series: GC.Spread.Sheets.Fill.FillSeries.column, }); start = new GC.Spread.Sheets.Range(0, 3, 1, 1); var r4 = new GC.Spread.Sheets.Range(0, 3, 4, 1); activeSheet.fillAuto(start, r4, { fillType: GC.Spread.Sheets.Fill.FillType.growth, series: GC.Spread.Sheets.Fill.FillSeries.column, step:2, stop:55 }); start = new GC.Spread.Sheets.Range(0, 4, 1, 1); var r5 = new GC.Spread.Sheets.Range(0, 4, 4, 1); activeSheet.fillAuto(start, r5, { fillType: GC.Spread.Sheets.Fill.FillType.linear, series: GC.Spread.Sheets.Fill.FillSeries.column, step:3, stop:20 }); activeSheet.setValue(0, 5, 123); var r6 = new GC.Spread.Sheets.Range(0, 5, 4, 1); activeSheet.fillAuto(new GC.Spread.Sheets.Range(0, 5, 1, 1), r6, { fillType: GC.Spread.Sheets.Fill.FillType.auto, series: GC.Spread.Sheets.Fill.FillSeries.column, }); |