sách gpt4 ai đã đi

google-apps-script - 连接 Google 表格中的两个范围

In lại 作者:行者123 更新时间:2023-12-02 20:21:05 25 4
mua khóa gpt4 Nike

tl;dr:如何使两个范围作为一个函数的参数显示为一个?例如,我想查看 E 列中的每个单元格除了 E5:
=MY_FUNCTION( 以某种方式加入( E1:E4, E6:E ) )

lý lịch
我正在 Google Sheets 中编写项目跟踪器,例如 Microsoft Project。我有一个custom function in Google Sheets这使我可以通过查看其所依赖的所有任务的最大结束日期来计算各种任务的开始日期:

=MAX_LOOKUP( G9, A:A, I:I )

但是,该任务的结束日期是根据开始日期计算的,并且该结束日期位于包含所检查的所有结束日期的列中。结果,我产生了循环依赖。 nhập mô tả hình ảnh ở đây

所以,我想为每一行编写公式以跳过当前行,例如:

=MAX_LOOKUP( G9, A1:A8 + A10:A, I1:I8 + I10:I )
<小时>

FWIW我当前的解决方法是重写自定义函数的签名,如下所示:

=MAX_LOOKUP_SKIPROW( G9, ROW(), "A", "I" )

并使用以下方法手动构造该函数内的两个范围:

var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var keys1 = sheet.getRange(keyCol+"1:"+keyCol+(skipRow-1)).getValues();
var vals1 = sheet.getRange(valCol+"1:"+valCol+(skipRow-1)).getValues();

var keys2 = sheet.getRange(keyCol+(skipRow+1)+":"+keyCol).getValues();
var vals2 = sheet.getRange(valCol+(skipRow+1)+":"+valCol).getValues();

这是一个函数式解决方案,但使函数具有更特殊的用途。我不认为这是对连接范围这个更普遍的问题的“答案”。

1 Câu trả lời

简短回答

创建您自己的数组并将它们用作自定义函数的参数。

minh họa

在 Google 表格中,用户可以通过将元素括在括号中来创建自己的数组。

Còn hơn là

=MY_FUNCTION( somehowjoin( E1:E4, E6:E ) )

sử dụng

=MY_FUNCTION({E1:E4;E6:E})

引用文献

Using arrays in Google Sheets - Google docs editors Help

关于google-apps-script - 连接 Google 表格中的两个范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35510298/

25 4 0
Bài viết được đề xuất: ember.js - #each 内的 Emberjs bindAttr
Bài viết được đề xuất: scala - 与条件语句匹配
Bài viết được đề xuất: .net - Sự khác biệt giữa .NET và ASP.NET là gì?
Bài viết được đề xuất: heatmap - ui-leaflet Heat 插件与 Microsoft 浏览器的 ui-leaflet-draw 冲突
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com