取消隐藏工作表的所有单元格(包括空列和行)

Unhide all the cells (including empty columns and rows) of a worksheet

我想取消隐藏工作表的所有单元格。我尝试以下代码:

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)。奇怪的是 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 有效

要获取 sheet 的整个范围,请使用 sheet.getRange(),就像这样,不指定任何参数。有用吗?