2

我想使用脚本取消合并我的谷歌电子表格的所有单元格。我相信 VBA 有这个选项(cells.unmerge),但我在 GAS 中找不到类似的操作。我试过这个脚本,但它似乎没有用。

function MyFunction() {
var Sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var Range = Sheet.getDataRange().activate();
Range.clearFormat();
}
4

2 回答 2

1

正确的词是“Range.breakApart”而不是“unmerge”。请注意,这仅在调用它的范围包含所有合并单元格时才有效。

于 2013-06-29T14:10:20.733 回答
1

试试这个代码:

function unmerge() {
   var app = SpreadsheetApp;

  // get current active sheet use single line coding
  var activeSheet =app.getActiveSpreadsheet().getActiveSheet();

  // get last row
  var lstrow= activeSheet.getLastRow();

  // see below description **
  var mergerange = activeSheet.getRange(13,4,lstrow).getMergedRanges();

  for (var i = 0; i < mergerange.length; i++) {
        Logger.log(mergerange[i].getA1Notation());
        Logger.log(mergerange[i].getDisplayValue());
        mergerange[i].breakApart();
   }
}

** 13= 起始行号。4 = 合并单元格的列数。

于 2021-07-28T17:21:39.727 回答