我有一个表单,因为要设置前几列不可编辑,后面列可编辑。设置了表单保护。
setOptions(sheet) {
var option = {
allowSelectLockedCells: true,//布尔值, 用户是否可以选中被锁定的单元格。
allowSelectUnlockedCells: true,//布尔值, 用户是否可以选中未被锁定的单元格。
allowSort: false,//布尔值,用户是否可以对一片单元格区域进行排序。
allowFilter: true,//布尔值,用户是否可以对一片单元格区域进行筛选。
allowEditObjects: false,//布尔值,用户是否可以编辑浮动元素。
allowResizeRows: true,//布尔值,用户是否可以改变行高。
allowResizeColumns: true,//布尔值,用户是否可以改变列宽。
allowDragInsertRows: false,//布尔值,用户是否可以拖拽插入行。
allowDragInsertColumns: false,//布尔值,用户是否可以拖拽插入列。
allowInsertRows: false,//布尔值,用户是否可以插入行。
allowInsertColumns: false,//布尔值,用户是否可以插入列。
allowDeleteRows: false,//布尔值,用户是否可以删除行。
allowDeleteColumns: false,//布尔值,用户是否可以删除列。
allowOutlineRows: true,//布尔值,用户是否可以展开或者折叠行组合。
allowOutlineColumns: true,//布尔值,用户是否可以展开或者折叠列组合。
};
sheet.options.isProtected = true;
sheet.options.protectionOptions = option;
}
// 处理表格中的可编辑列
//右键插入注释列方法
AddColRemark(sheet) {
if (sheet) {
var sels = sheet.getSelections();
var newCol = sels[0].col;
sheet.addColumns(newCol, 1);
sheet.setValue(0, newCol, "﹡", GC.Spread.Sheets.SheetArea.colHeader);
sheet.setColumnWidth(newCol, 150);
var style = new GC.Spread.Sheets.Style();
style.locked = false;
style.foreColor = 'rgb(79,129,189)'
style.font = 'bold 11pt SimSun';
sheet.setStyle(- 1, newCol, style, GC.Spread.Sheets.SheetArea.viewport);
var styleColor = new GC.Spread.Sheets.Style();
styleColor.backColor = 'yellow'
sheet.setStyle(- 1, newCol, styleColor, GC.Spread.Sheets.SheetArea.colHeader);
sheet.setFormatter(-1, newCol, '');
}
}
用上面的方法,新插入的列没办法编辑。请问该怎么处理呢
|