簡體   English   中英

如何在沒有 header 的 ZCC8D68C551C4A9A9A6D5313E07DE4DEAFDZ 文件中將 append 數據導入 Google 表格

[英]How do I append data from a CSV file without the header into Google Sheet

我已經設法將數據和 append 檢索到我的工作表中,但我還沒有弄清楚如何排除 header 行。

 function importFromCSV() { var fileName = Browser.inputBox("Ingrese archivo en Drive a importar (ej. datosBaby.csv):"); var searchTerm = "title = '"+fileName+"'"; // search for our file var files = DriveApp.searchFiles(searchTerm) var csvFile = ""; // Loop through the results while (files.hasNext()) { var file = files.next(); // assuming the first file we find is the one we want if (file.getName() == fileName) { // get file as a string csvFile = file.getBlob().getDataAsString(); break; } } // parseCsv returns a [][] array and writes to the sheet var csvData = Utilities.parseCsv(csvFile); var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getActiveSheet(); // data to a sheet sheet.getRange(sheet.getLastRow()+1, 1, csvData.length, csvData.length).setValues(csvData); //sheet.getRange(1, 1, csvData.length, csvData[1].length).setValues(csvData); <-- This one places txt a A1 //sheet.appendRow(csvData[1]); <-- This one does not work }

這是正在發生的事情的一個示例:重復導入 CSV 中的 header

感謝任何可以為我指明正確方向的人。 我是這方面的初學者。

所以我知道您正在導入多個 csv ,其中 header 對每個都重復。

要擺脫它有很多動作,我自己更喜歡將實際數據的header分開。 您可以通過將.shift()調用到數組中來做到這一點,這將刪除並返回數組的第一個值。

解析完csv后調用shift方法。

var csvData = Utilities.parseCsv(csvFile);
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();

var header = csvData.shift(); // Now the csvData don't have the header and you can
                              // still use the `header` variable if needed

// data to a sheet
sheet.getRange(sheet.getLastRow()+1, 1, csvData.length, csvData[0].length)
     .setValues(csvData);

我也改變了你select的列方式,除非你的數據是N個元素的平方N個arrays,你會有問題。 所以最好將列作為csvData[0].length

拼接方法是正確的,但在上面的解決方案中,它返回 header 的值,並且不會刪除 header。 刪除 header 所需的是使用拼接 function 並告訴它從第二行開始,並告訴它 go 直到結束。 這看起來像這樣:

var csvDataNoHeader = csvData.splice(1,csvData.length-1)

這告訴 function 從數組的第二個元素和 select 之后的所有元素開始,負 1 表示刪除 header。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM