Можно ли отформатировать весь столбец, а не только отдельные заполненные ячейки?

Основываясь на этом ответе, я правильно форматирую даты в ячейках в экспортированном файле .xlsx, используя Sheet.js. Когда я смотрю на форматирование ячеек в заполненных ячейках в экспортированном файле, кажется, что пользовательский формат даты применяется правильно:

введите здесь описание изображения

Однако, когда новые данные вводятся в экспортируемый .xlsx, формат даты по умолчанию соответствует тому, что (я думаю) является форматом даты по умолчанию Excel:

введите здесь описание изображения

Я хотел бы, чтобы мой пользовательский формат даты (m/d/yyyy h:mm:ss AM/PM) применялся ко ВСЕМ ячейкам в столбце. Так можно ли отформатировать весь столбец, а не только заполненные ячейки? Я знаю, что это можно сделать через графический интерфейс Excel, но мне интересно, можно ли это сделать с помощью кода Sheet.js, чтобы, если пользователь вводит заглушку даты, она преобразовывалась в пользовательский формат.

введите здесь описание изображения


    var excelData = excelImportExport.getExcelForExport(editorJson);
    var headers = ["Event Start Date", "Event End Date", "Event Title", "Event Subtitle", "ID"];
    var ws = XLSX.utils.json_to_sheet(excelData.events,
        {
            header: headers,
            skipHeader: false,
            dateNF: "m/d/yyyy h:mm:ss AM/PM",
            cellDates: true
        });

    var wb = XLSX.utils.book_new();

    if (!wb.Custprops) wb.Custprops = {};
    wb.Custprops["Export Info"] = excelData.exportInfo

    const dateFmt = "m/d/yyyy h:mm:ss AM/PM";
    for (let col of [0, 1]) {
        formatColumn(ws, col, dateFmt)
    }

    XLSX.utils.book_append_sheet(wb, ws, appName);
    XLSX.writeFile(wb, arg.file);

function formatColumn(worksheet, col, fmt) {
    const range = XLSX.utils.decode_range(worksheet['!ref'])
    
    for (let row = range.s.r + 1; row <= range.e.r; ++row) {
        const ref = XLSX.utils.encode_cell({ r: row, c: col })
        if (worksheet[ref] ) {
            worksheet[ref].z = fmt;
        }
    }
}

person spring    schedule 21.04.2021    source источник