Google sheets 谷歌文档,从谷歌表单链接到动态范围
按照这个指南,我能够将我的谷歌工作表中的数据链接到我的谷歌文档中Google sheets 谷歌文档,从谷歌表单链接到动态范围,google-sheets,google-docs,Google Sheets,Google Docs,按照这个指南,我能够将我的谷歌工作表中的数据链接到我的谷歌文档中 是否有一种方法可以在表格缩小和增大时自动更新范围大小?您可以执行以下操作: 创建一个新的命名范围,其中包括表的当前范围(ref:) 使用将该命名区域链接到所需位置 在电子表格上,单击Tools>scripteditor打开绑定脚本,并复制以下代码。此函数用于检索所需的命名范围,并使用表的当前维度对其进行更新: 安装一个将按指定周期触发updateNameRange。您可以手动(跟随),也可以编程。为了以编程方式安装此程序,请复制
是否有一种方法可以在表格缩小和增大时自动更新范围大小?您可以执行以下操作:
Tools>scripteditor
打开绑定脚本,并复制以下代码。此函数用于检索所需的命名范围,并使用表的当前维度对其进行更新:updateNameRange
。您可以手动(跟随),也可以编程。为了以编程方式安装此程序,请复制并运行一次类似以下的函数:- 上一个示例使用的参数设置为1,因此范围将每分钟更新一次。您可以找到替代频率的方法
- 在上面的示例中,表格位于名为
的工作表中,其命名范围标题为Sheet1
,从单元格MY_range
开始。如果不是您的情况,请更改电子表格中的所有内容A1
- 我假设您已经知道如何链接命名范围
onEdit
只适用于用户编辑。另一种选择是使用时间驱动触发器。这样,范围可以定期更新(最大频率为每分钟)。可以吗?此外,这些值是实际写入电子表格的,还是通过公式填充的?@Iamblichus,这些值是写入电子表格的。从Google文档更新时,时间驱动触发器如何工作。当工作表处于焦点/使用状态时,时间驱动触发器是否会更新?听起来唯一的方法是编程解决方案;它的功能非常强大,我一直在考虑对所有行进行forEach,但该功能非常出色。只要前一行中有一些数据,它也会处理孤立的cel。此外,我将脚本绑定到一个按钮,而不是一个定时触发器,因为有一个更改源数据的过程。
const SHEET_NAME = "Sheet1"; // Change according to your preferences
const NAMED_RANGE_NAME = "MY_RANGE"; // Change according to your preferences
function updateNamedRange() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheetByName(SHEET_NAME);
const namedRanges = ss.getNamedRanges();
const namedRange = namedRanges.find(namedRange => namedRange.getName() === NAMED_RANGE_NAME);
const range = sheet.getRange("A1").getDataRegion();
namedRange.setRange(range);
}
function installTimeTrigger() {
ScriptApp.newTrigger("updateNamedRange")
.timeBased()
.everyMinutes(1)
.create();
}