我有數據陣列看起來大致是這樣的:Google Apps腳本:如何從數組中刪除散佈的標題行?
header row | header row | header row | header row project | date | LastName, FName | hours project | date | LastName, FName | hours project | date | LastName, FName | hours header row | header row | header row | header row project | date | LastName, FName | hours project | date | LastName, FName | hours project | date | LastName, FName | hours
我想剝離標題行從數組中。我想我會用ArrayLib.filterByDate
這樣做,認爲任何在我的時間範圍內沒有包含有效日期的行都會被刪除。
這是我試過的代碼:
function removeHeaders(projectRange){
var tmpProjectRange = [];
tmpProjectRange = ArrayLib.filterByDate(projectRange, 1, new Date(2013-01-01), new Date(2015-01-01))
return tmpProjectRange;
}
我得到一個錯誤:「所選列應只包含日期」。所以這種方法似乎不是一種選擇。現在
,我試圖用ArrayLib.filterByText
列2比較有效的一組數據:
function removeHeaders(projectRange){
var tmpEmployeeRange = [];
var tmpEmployeeList = [];
var ss = SpreadsheetApp.getActiveSpreadsheet();
var shtEmp = ss.getSheetByName("Employees");
var empLastRow = shtEmp.getLastRow();
var strRange = "A2:A" + empLastRow;
//should contain a list of all the employees:
tmpEmployeeList = shtEmp.getRange(strRange).getValues();
tmpEmployeeRange = ArrayLib.filterByText(projectRange, 2, tmpEmployeeList);
return tmpEmployeeRange;
}
但出於某種原因,這是行不通的兩種。在tmpEmployeeRange
中返回的唯一行是名稱沒有逗號的行(這些行具有TBD而不是姓氏,名字)。所以我不太確定那裏發生了什麼,但是,我認爲必須有一個更簡單的方法來做到這一點。我想我可以遍歷整個事物並去掉我不想要的行。任何其他想法?
完美!謝謝。 – brl8 2013-04-10 20:20:29