Viết chương trình google app script để tải về máy tính nội dung nhiều ô trong google sheet được bỏ trong các tệp ".jsp" được nén trong 1 file zip
Dưới đây là mã Google Apps Script để tải về nội dung của một số ô trong Google Sheet, sau đó đặt chúng vào các tệp .jsp và nén chúng vào một tệp zip. Chúng tôi sẽ sử dụng thư viện "ZipArchive" cho việc nén file zip. Hãy đi theo các bước sau để triển khai mã:
Bước 1: Cài đặt thư viện "ZipArchive"
Bước 2: Thêm mã sau vào file "Code.gs" trong trình chỉnh sửa Apps Script:
function createZipFromSheet() {
// Lấy dữ liệu từ Sheet
var sheetId = '[SHEET_ID]';
var range = 'A1:B10';
var spreadsheet = SpreadsheetApp.openById(sheetId);
var data = spreadsheet.getSheetByName('Sheet1').getRange(range).getValues();
// Tạo folder để lưu các file .jsp
var folderName = 'JSPFiles';
var parentFolder = DriveApp.getRootFolder();
var folders = parentFolder.getFoldersByName(folderName);
var folder;
if (folders.hasNext()) {
folder = folders.next();
} else {
folder = parentFolder.createFolder(folderName);
}
// Tạo và lưu các file .jsp vào folder JSPFiles
data.forEach(function (row, index) {
var content = row.join('\n');
var fileName = 'file' + (index + 1) + '.jsp';
folder.createFile(fileName, content, MimeType.PLAIN_TEXT);
});
// Tạo file zip từ các file .jsp trong folder JSPFiles
var zipName = 'JSPFiles.zip';
var options = {
comment: 'Created by Google Apps Script',
};
var zipBlob = new ZipArchive.Zip()
.addFolder(folder.getId(), options)
.generate('blob', options);
zipBlob.setName(zipName);
// Tải file zip về
var downloadUrl =
'https://docs.google.com/uc?export=download&id=' + zipBlob.getId();
Logger.log('Download URL: ' + downloadUrl);
}
Đảm bảo thay thế [SHEET_ID]
thành ID thực của Google Sheet của bạn. Bạn cũng có thể chỉnh sửa biến 'range' để chọn các ô dữ liệu khác.
Bước 3: Chạy mã
createZipFromSheet
và nhấn nút "Run" (►) để chạy mã.Lưu ý rằng thao tác này sẽ tạo các tệp .jsp trong Google Drive của bạn, nếu bạn không muốn giữ chúng, hãy xóa chúng sau khi tải xuống tệp zip.