我无法使用 JXA 在 Mac Numbers 中使用 Delete Row/Remove

I can't get Delete Row/Remove to work in Mac Numbers with JXA

我已经为 Numbers 编写了一个 JXA 脚本,它将标准的电子商务订单电子表格转换为 Stamps.com 格式,用于上传订单、打印运输标签。在为 Numbers 的 JXA 挖掘信息 2 周后,我的转化率为 90%。但是,我需要删除一些不相关的行并且无法使该功能正常工作。我也对 .deleteRow() 和 .remove() 感到困惑。 注释掉的代码是一次不同的尝试,但也没有奏效。但是,使用 table.ranges["6:6"] 我确实设法 select (突出显示)整个第 6 行,但没有删除。这是我当前的代码(片段)。


var Numbers = Application('Numbers')
Numbers.includeStandardAdditions = true;

const myFilePath = "/Users/jds/Sites/Customer Excel sheets for STAMPS/";

// Point to the file and open it 
var path = Numbers.chooseFile({ withPrompt: 'Please select spreadsheet file (.xls, .xlsx, .numbers' })  

var doc = Numbers.open(path) 

// Access the first table of the first sheet of the document 

thesheet = doc.sheets[0]
table = thesheet.tables[0]

...


// Check for "Marci Bee" example (highlighted) row present at row 6; if so, delete the row.

    if (table.cells["E6"].value() === "Marci Bee") {
        Numbers.displayAlert("Marci is here.")    // *** DEBUG *** (This works)
        const marciRow = 6
        thesheet.deleteRow(marciRow);

/*
    Numbers.displayAlert("Ok 1")                        // *** DEBUG ***    
        table.rangeSelection = table.ranges["6:6"]
    Numbers.displayAlert("Ok 2")                        // *** DEBUG ***
        rmMyRow = table.selectionRange()        
    Numbers.displayAlert("Ok 3")                        // *** DEBUG ***    
        rmMyRow.delete()
*/

    Numbers.displayAlert("Marci is gone.")              // *** DEBUG ***

    }

table.rows[marciRow-1].delete(); //the index is zero based