[英]Adding Formula from JavaScript to CSV to be imported to Google Sheet results in multiple columns
我一直在嘗試使用 JavaScript 將下面顯示的公式添加到 Google 表格中的單個列中,但由於逗號的原因,它導致了不同的列。
=IF(A2="VALID", B2, 0)
目前,我用來生成 CSV 的代碼如下:
var CSVRowDemo = [];
var CSVDemo = 'data:text/csv;charset=utf-8,';
CSVRowDemo.push(['VALID/INVALID', 'Value', 'Check'])
let index = 2;
let check = '"' + '=IF(A'+index+'=\"VALID\"", B'+index+', 0)'.replace(/"/g, '""') + '"';
CSVRowDemo.push(['VALID', '100', check])
CSVRowDemo.forEach(function(rowArray) {
let row = rowArray.join(',');
CSVDemo += row + '\r\n';
});
encodedUri = encodeURI(CSVDemo);
link = document.createElement("a");
link.setAttribute("href", encodedUri);
link.setAttribute("download", "Basic.csv");
document.body.appendChild(link);
link.click();
期待看到這樣。 (這就是它在 LibreOffice Calc 中的呈現方式。)
最接近回答這個問題的是來自這個答案。
我試圖只使用 Javascript 而不是 NodeJS 或其他庫。
任何幫助表示贊賞。
雖然我不確定將創建的CSV數據放入Google Spreadsheet的方法,但您可以測試以下修改嗎?
let check = '"' + '=IF(A'+index+'=\"VALID\"", B'+index+', 0)'.replace(/"/g, '""') + '"';
let check = `"=IF(A${index}=""VALID"", B${index}, 0)"`;
或者
let check = '"=IF(A'+index+'=""VALID"", B'+index+', 0)"';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.