我想取消隐藏工作表的所有单元格。我尝试以下代码:
function unhideSheet (sheetName) {
return Excel.run(function (ctx) {
var sheet = ctx.workbook.worksheets.getItem(sheetNames[i]);
sheet.visibility = "Visible";
sheet.getUsedRange().columnHidden = false;
sheet.getUsedRange().rowHidden = false;
return ctx.sync();
});
}
问题是getUsedRange
未涵盖隐藏的空列或行。因此,该函数不会取消隐藏这些隐藏的空列或行。
是否有人知道是否可以获取整个工作表的范围,以便我们可以取消隐藏所有内容?
编辑1:
我已经计算出工作表中的行数是1048576
(Excel Online)。奇怪的是sheet.getRange("1:20").rowHidden = false
运作良好,而sheet.getRange("1:1048576").rowHidden = false
引发错误This operation is not permitted for the current object
。是因为范围太大了吗?
我意识到sheet.getRange("1:1048575").rowHidden = false
有效。
答案 0 :(得分:0)
要获取工作表的整个范围,请使用sheet.getRange(),就像这样,不指定参数。这有用吗?