Excel JavaScript API - 如何在填充范围结束前选择单元格

问题描述 投票:0回答:1

什么是VBA的JavaScript API版本:

Range(ActiveCell, ActiveCell.End(xlDown)).Select

从本质上讲,我想做同样的ctrl+down arrow keycombo。将当前选择范围扩展到具有值的最后一个单元格。

javascript office-js excel-addins
1个回答
0
投票

我不得不写一个自定义函数。这里是。但我希望有一个原生API用于这种经常使用的功能。我认为,它是最常用的。

export const get_nonempty_range_down = async (startingCell, context) => {
  const distanceLimit = 999;
  const rangeToTest = startingCell.getResizedRange(distanceLimit, 0);
  rangeToTest.load("values");
  await context.sync();

  const matrixValues = rangeToTest.values;
  let finalCellPosition = null;
  matrixValues.some((row, i) => {
    if (row[0] === "") {
      finalCellPosition = i - 1;
      return true;
    }
    return false;
  });

  const result = startingCell.getResizedRange(finalCellPosition, 0);
  // Debug
  // result.load("address");
  // await context.sync();
  // console.log(result.address);
  return result;
};

它仍然是不完美的,因为它只穿过一千个细胞。好我的需要,但不是一个完整的解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.