【发布时间】:2020-04-15 02:15:37
【问题描述】:
我想要做的是,我们将数据转储到谷歌表格上的预付费文件中,有人输入“开始日期”,这意味着这个预付费项目计划在 X 个月开始转移到费用中。 3 月的示例是我的文件显然有 3 月的日期,甚至包括 2019 年之前的几个月(因为它是预付的),我也有 4 月和 5 月的日期,因为发票提前提交。我要做的是创建一个谷歌脚本,过滤比当前月份更少的所有内容,以便能够发布正确的时间范围(所以我只想在 3 月和 3 月数据之前进行调整。
这是我的循环..
function PivotTest() {
var pull = SpreadsheetApp.getActive().getSheetByName("Pull");
var lr = pull.getLastRow();
var criteriadate = pull.getRange(2,1).getValue();
var pullrawdata = pull.getRange(5,31,lr,1).getValues();
var Pulld= []
for (var i = 0; i< pullrawdata.length ; i++){
if (pullrawdata[i][0] <= criteriadate)
{
Pulld.push(pullrawdata[i])
}
}
criteriadate 是我们所在月份的公式 (eomonth(today(),0); 然后我有一堆代码添加我的其他数据透视表信息(我的标准在底部)...
var criteria = SpreadsheetApp.newFilterCriteria()
.setVisibleValues([Pulld])
.build();
pivotTable.addFilter(31, criteria);
Pullrawdata 是数据集的日期或“起始日期”,我一直试图将它们移动到类似的格式,但问题是当我的数据透视表创建时它不会过滤任何东西,所以我去显示我的拉数组输出,它的格式与日期的数据格式完全不同,因此与标准日期不同。我被难住了,请帮忙。我是否无法通过数组过滤可见值,即使当我显示数组时它是正确的,因为不包括四月/五月的数据?
【问题讨论】:
标签: google-apps-script google-sheets filter pivot