Office 脚本 - 自动填充

Office Scripts - AutoFill

当旁边的列中有值时,我试图让另一列旁边的列填充零。但是它们变得无穷无尽,并且一直延伸到无穷大。有谁知道当它旁边的列也结束时如何让它停止?

我的代码:

function main(workbook: ExcelScript.Workbook) {
    let selectedSheet = workbook.getActiveWorksheet();
    selectedSheet.getRange("U4").setValue("0");
    selectedSheet.getRange("U4").autoFill();
}

在这幅图中,我希望零的列只填满左边有数字的那一列,现在它填满了整列,看不到尽头。这可能吗?

这是一个使用自动填充执行此操作的脚本:

function main(workbook: ExcelScript.Workbook) {
    let selectedSheet: ExcelScript.Worksheet = workbook.getActiveWorksheet();
    selectedSheet.getRange("U4").setValue("0");
    let fillRange: ExcelScript.Range = selectedSheet.getRange("T4").getExtendedRange(ExcelScript.KeyboardDirection.down).getOffsetRange(0,1);
    selectedSheet.getRange("U4").autoFill(fillRange.getAddress(), ExcelScript.AutoFillType.fillDefault);
}

或者,一旦获得 filledRange,您可以使用 setValue() 方法将该范围内的值设置为零:

function main(workbook: ExcelScript.Workbook) {
  let selectedSheet: ExcelScript.Worksheet = workbook.getActiveWorksheet();
  let filledRange: ExcelScript.Range = selectedSheet.getRange("T4").getExtendedRange(ExcelScript.KeyboardDirection.down).getOffsetRange(0,1);
  offsetRange.setValue(0);
}